← Back to context

Comment by waynesonfire

1 day ago

I havn't had to deal with this problem until recently and seems like an obvious scalablity issue so I'm sure I'm not the only one to have hit this.

How do I handle, say 100K concurrent transactions in an OLTP database? Here are my learnings that make this difficult,

- a transaction has a one-to-one mapping with a connection

- a connection can only process one transaction at at time, so pooling isn't going to help.

- database connections are "expensive"

- a client can open at maximum, 65k connections as otherwise it would run out of ports.

A 100k connections isn't that crazy; say you have 100k concurrent users and each one needs a transaction to manage it's independent state. Transactions are useful as they enforce consistency.