I was wondering how many client tcp connections an eventstore server can manage? We have a large number of clients that will need to connect to eventstore (potentially listening to the same streams) and we’re wondering whether we need a messaging infrastructure in between rather than connecting the clients to eventstore directly?
Are they all client TCP or can they be http? How many clients are you
talking about? What is the # of messages per connection/second etc?
With little usage say 1 message/second its pretty easy to get in the
Its pretty easy to make a test for this btw. Write to a stream one event/second.
Then start opening subscribers. In linux you will probably need to set
ulimit and probably sysctl.conf changes
net.ipv4.tcp_mem = 50576 64768 98152
net.core.netdev_max_backlog = 2500
Thanks for getting back to me so quickly.
We’re going to want to respond to the events as quickly as possible so I think we’ll be going for tcp exclusively.
Saying a large number of clients was probably misleading as i’m talking 100 ish thick clients.1 message a second might be the average at the moment, but as we look to move more and more functionality off the clients onto distributed aggregates this will increase. We are also likely to have spiking activity where 1 message a second is the average, but at times we’ll get a few hundred.
I’ll hopefully be able to give the testing a go in the next few days and I’ll let you know how I get on.