Our application exposes a webservice interface to clients, and connects to other providers for performing transactions. Whilst doing loadtesting, I noticed that the client connecting to an upstream provider using HttpWebRequest was not opening more than 2 concurrent connections at any time, causing latency to go through the roof and tps not scaling once the number of simultaneous requests to the webservices goes over 5. Googling a bit yielded this link: http://social.msdn.microsoft.com/Forums/en-US/1f863f20-09f9-49a5-8eee-17a89b591007/asynchronous-httpwebrequest-maximum-connections-best-approach-threads-or-delegates?forum=netfxnetcom.
Googling a little bit more I found details about the connectionManagement config section. After adding a section to the application's config file it now scales as expected, with more simultaneous connections increasing the tps as expected.
Showing posts with label ServicePointManager. Show all posts
Showing posts with label ServicePointManager. Show all posts
HTTP concurrent connections
Posted on Tuesday, November 26, 2013
by Nicki
0 comments Filed Under: .Net Framework, Concurrency, connectionManagement, http, Loadtesting, ServicePointManager
Subscribe to:
Posts (Atom)