Y
Yoav Ben-Ari
Hi,
I've come across I strange scenario which I can't explain... Please Help
!!!!
1) I created a simple web service on a server
2) I created a proxy to the web server using the wsdl.exe tool
3) I created a console application that calls a function in the webservice
via the proxy
1000 times with Thread.Sleep(50) between.
Now, when I run one instance of the process, I get about 20 hits per second
on my server (using perfmon) - not CPU bound and not network bound. So far
so good.
When running two instances of the process (from the same machine) I would
expect to get 40 hits per second - I get a bit less.
The problem starts here, as I increase the number of processes running the
client, the hits/second on the server don't increase beyond about 40. This
is also true if running the process from different computers.
If I duplicate the thread, rather than the process running the call - sleep
I do get a result which is the number of thread * 20 hits per second (i.e 5
threads would produce 100 hits per second).
Can anyone please tell me why I'm getting this behavior ?
Why don't multiple processes (even on different machines) give the same
result as multiple threads ?
Thanks,
Y.
I've come across I strange scenario which I can't explain... Please Help
!!!!
1) I created a simple web service on a server
2) I created a proxy to the web server using the wsdl.exe tool
3) I created a console application that calls a function in the webservice
via the proxy
1000 times with Thread.Sleep(50) between.
Now, when I run one instance of the process, I get about 20 hits per second
on my server (using perfmon) - not CPU bound and not network bound. So far
so good.
When running two instances of the process (from the same machine) I would
expect to get 40 hits per second - I get a bit less.
The problem starts here, as I increase the number of processes running the
client, the hits/second on the server don't increase beyond about 40. This
is also true if running the process from different computers.
If I duplicate the thread, rather than the process running the call - sleep
I do get a result which is the number of thread * 20 hits per second (i.e 5
threads would produce 100 hits per second).
Can anyone please tell me why I'm getting this behavior ?
Why don't multiple processes (even on different machines) give the same
result as multiple threads ?
Thanks,
Y.