Problem using multithreaded client with MTOM
Hi,
I written a client/server application to pass files using MTOM. I am creating multile threads to simulate load on the server. When measuring the latency it increased for the first two threads then decreases as the threads are increased past two.
I had a similar problem when multithreading with http and I had to add the following which I have also added to my WCF client but this still does not appear to have any affect.
<
system.net><
connectionManagement><
addaddress ="*"maxconnection ="12" /></
connectionManagement></
system.net>Is there any other configuration I should be looking at to get this to work?
Thanks
Throttling for WCF services is controlled by the throttling behavior. For a PerCall service without sessions, the following settings should allow significant throughput on a high-powered production server machine:
<behavior name="serviceBehavior">
<
serviceThrottling maxConcurrentCalls="30" maxConcurrentInstances="30" maxConcurrentSessions="1000"/></
behavior>Once you introduce sessions (application, transport (TCP/ICP), reliable sessions, secure sessions) you have to make sure that you increase the max sessions level according to what your server load can take, and what your expected client base is.
Another factor is that Windows servers will throttle TCP connections, to 10 I think by default. You have to increase that if you want more than 10 concurrent TCP sessions.