-2

I want to stress my .net web service, It feels like something is limiting the concurrent connections I can have.. even when trying from 2 different computers on them server the results were pretty the same. (All of this is done locally, server and clients are on local network so response time is very fast)

So is there a settings I need to change in my server machine to allow more incoming connections?

Bex
  • 4,898
  • 11
  • 50
  • 87
Anonymous
  • 77
  • 1
  • 9
  • 1
    asp.net does not. IIS does. – smoksnes Nov 22 '16 at 14:10
  • https://www.iis.net/configreference/system.applicationhost/sites/site/limits - note the default value for `maxConnections` is 4294967295 – stuartd Nov 22 '16 at 14:10
  • 1
    @CodeCaster you are slightly incorrect. ASP.NET can I'm certain situations limit concurrent processing, and in a manner that is almost impossible to get a metric on. Specifically speaking about SessionState concurrency. – Mitchel Sellers Nov 22 '16 at 14:23
  • I didn't say it was slow. I asked what could limit my concurrent incoming connections.. the server running is IIS and the webserver is in .net, sorry for not clearing that up. – Anonymous Nov 22 '16 at 14:30
  • @CodeCaster totally agree it's a horrible question. But the more I see these performance questions the more o realize people don't know how to even approach them. Any thoughts on how we can properly educate them to get closer? (I do a Ton of performance optimization work, and 99.9% of the time the initial request is to fix poor performance with no metrics.) – Mitchel Sellers Nov 22 '16 at 14:31
  • if I remember correctly its around 10k due to thread pool limitation – Steve Nov 22 '16 at 14:36

1 Answers1

1

There are various things that can limit the amount of processing possible, each of which require research to see if they apply. So you might want to add more to your question about what has been verified today.

Regardless, based on your information I would assume that SessionState is enabled. This, with default behavior will limit processing to a single request at a time for each client due to synchronization locks for guaranteed read-write ability. I assume this is the root cause of what you are seeing today. This StackOverflow post talks about this specifically

Others have posted various details in the comments that can help also.

I have found though that load testing is best done from outside sources as well to ensure your entire production pipeline is involved. (Network components, etc)

Community
  • 1
  • 1
Mitchel Sellers
  • 62,228
  • 14
  • 110
  • 173
  • @CodeCaster deleted mine too. Just trying to help be productive. I have made my details more direct and addressing a specific issue. – Mitchel Sellers Nov 22 '16 at 14:29