I have a c# WCF web service which is a server and I do have 2 clients one is java client and another is c++ client. I want both the clients to run at the same time. The scenario I have and am unable to figure it out is:
My java client will be making a call to the WCF web service and the processing time might take around 10 mins, meanwhile I want my c++ client to make a call to the web service and the get the response back. But right now I am just able to make a call to web service using c++ client when the java client request is being processed. I am not getting the response back for c++ client request until java client request is completed.
Can any one please suggest me how to make this work parallel. Thanks in advance.
Any “normal” WCF service can most definitely handle more than one client request at any given time.
It all depends on your settings for
InstanceContextMode:PerSession means, each session gets a copy of the service class to handle a number of requests (from that same client)
PerCall means, each request gets a fresh copy of the service class to handle the request (and it’s disposed again after handling the call)
Single means, you have a singleton – just one copy of your service class.
If you have a singleton – you need to ask yourself: why? By default,
PerCallis the recommended setting, and that should easily support quite a few requests at once.See Understanding Instance Context Mode for a more thorough explanation.