I have a WCF duplex service that freezes after magic 10 proxy instances. Specific error on the client:
"System.TimeoutException: this request operation sent to net.tcp: // localhost: 8080 / RoomService / netTcp did not receive a response within the set timeout (00: 00: 59.9960000)."
There are no error messages on the server.
Please note that this is not a standard obvious problem, i.e. Inability to close my proxy connections, as I close each instance of my proxy connection appropriately before opening the following:
try
{
client.Close();
}
catch (CommunicationException)
{
client.Abort();
}
catch (TimeoutException)
{
client.Abort();
}
catch (Exception)
{
client.Abort();
throw;
}
And I set the throttle mode to 500 simultaneous actions:
ServiceThrottlingBehavior throttlingBehavior = new ServiceThrottlingBehavior()
{
MaxConcurrentCalls = 500,
MaxConcurrentSessions = 500,
MaxConcurrentInstances = 500
};
I set the ConcurrencyMode of my service to Multiple, and I tried all three possible values for InstanceContextMode.
[ServiceBehavior(InstanceContextMode=InstanceContextMode.PerSession, ConcurrencyMode = ConcurrencyMode.Multiple)]
IIS, .
NetTcpBinding, WSDualHttpBinding PollingDuplexBinding ( Silverlight) . BasicHttpBinding WSHttpBinding, .
, ( ), , .
- , . InstanceContext - - -, - .
, 10- , , .
, ?