WCF Não excedeu o tempo limite corretamente?
Estou com um problema de tempo limite, estes são os detalhes:
inha configuração de ligação é assim:
<netTcpBinding>
<binding name="WindowsServerOverTcp"
maxReceivedMessageSize="10000000"
maxBufferSize="10000000"
maxBufferPoolSize="10000000"
closeTimeout="00:00:03"
openTimeout="00:00:03"
sendTimeout="00:00:03"
receiveTimeout="00:00:03">
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"
maxArrayLength="2147483647" maxBytesPerRead="2147483647"
maxNameTableCharCount="2147483647" />
<security mode="None">
</security>
</binding>
</netTcpBinding>
Eu estou enviando uma mensagem para um servidor que eu sei que está desligado, então a conexão deve expirar após 3 segundos, conforme estipulado no meu app.config, mas, por algum motivo, está levando de 20 a 30 segundo
Quando o EndPointNotFoundException é lançado, esta é a informação que recebo:
System.ServiceModel.EndPointNotFoundException: Não foi possível conectar-se ao net.tcp: //10.0.0.82: 4466 / MegaMatcherWcf. A tentativa de conexão durou um período de 00:00:03. Código de erro TCP 10060: uma tentativa de conexão falhou porque a parte conectada não respondeu adequadamente após um período de tempo ou a conexão estabelecida falhou porque o host conectado não respondeu 10.0.0.82:446
Se eu tentar o mesmo teste com a máquina ligada, mas nenhum software de escuta em execução, obtenho o comportamento esperado, com o tempo limite da conexão expirando após 3 segundos. Por que, se a máquina está desligada, leva 30 segundos e depois me diz que levou 3 segundos?