Using .NET Client 2.1
With sever 3.0+
when doing concurrent requests some get/set take a few seconds, have increased max connections to 100 but didn’t see much of a performance gain, on server I can see it is doing only 6-8k ops/sec.
Creating the bucket,cluster is an expensive operation hence we only do it once at application start, which is visible as during tests, tests of about 5-10 business transactions/sec results in each transaction taking around 150-250ms
which is expected but going beyond 15-20 results in the above scenario
Increasing the max connection a bit more resulted in out of memory exception, looking at the source code for the sdk I can see
BufferAllocator = § => new BufferAllocator(p.MaxSize * p.BufferSize, p.BufferSize); within each connection, why is the buffer for each connection dependent on the max size of the pool ? as this would result in significant memory requirements.
Port exhaustion isn’t the issue have checked.