ValidateUriRoute - what is it? Why is it aborting my sockets?
We are trying to solve some ongoing WCF socket errors (which are filling up our WCF trace logs for one of our services). We are getting socket errors (more precisely, 'SocketConnection aborted') all the time, but before these we alway have:
To: Process action 'http://tempuri.org/IConnectionRegister/ValidateUriRoute and From: Process action 'http://tempuri.org/IConnectionRegister/Validat开发者_运维百科eUriRoute which always occur right before the socket aborts.The trace logs are literally littered with these errors and calls and I was wondering if anyone could shed any light on it at all. Any help is most appreciated. Regards, SteveWe also came across this problem and tracked it down to the TCP Port Sharing service. We tried a lot of different things recommended on this page.
What seemed to help the most was increasing maxPendingAccepts, listenBacklog, and maxPendingConnections to these values:
<net.tcp listenBacklog="100" maxPendingConnections="1000" maxPendingAccepts="10" receiveTimeout="00:00:10" teredoEnabled="false">
However, we could never get rid of the problem entirely. In the end, we decided to ditch port sharing (and IIS hosting along with it) and go with a self-hosted solution. I can happily say that this problem has completely disappeared after we made the switch.
Wish I could provide some more insight, but we're experiencing the same conditions without any real answer. It seems to be related to TCP Port Sharing, though. I suspect the port sharing service isn't responding right away to validation requests, or it does but aborts the channel. At the same time, the request gets retransmitted and eventually does go through, so the overall WCF communication does not fail.
Best I could offer - hope it helps.
精彩评论