A pergunta é antiga e isso pode ser um problema de raiz diferente, mas, como passei mais de uma semana rastreando-a e isso pode ajudar alguém a economizar tempo aqui:
Estou com um problema que apresenta um erro semelhante. depois de entrar em contato com o suporte técnico do azure, seu melhor palpite (eles são não ter certeza ) é que as conexões inativas são mortas por algum proxy entre os aplicativos da web e o servidor. isso acontece depois de cerca de 4 minutos. e de tal maneira que tanto o servidor quanto o cliente não têm idéia de que isso está acontecendo. Quando você tenta usar a conexão nesse estado, o cliente envia pacotes que nunca chegam ao servidor.
Por último, ouvi que isso não será alterado / corrigido. então as opções para evitar isso (em ordem de sanidade) são:
- mate as conexões inativas no servidor na marca de ~ 3 minutos.
- define o cliente para matar a conexão se estiver inativa na marca de ~ 3 minutos.
- verifique se você não tem conexões ociosas fazendo algum trabalho ocupado no cliente.
sua tentativa novamente se a conexão falhar funcionará se ela realmente criar uma nova conexão, caso contrário, ela fará com que o aplicativo espere mais tempo antes de chegar ao mesmo ponto.
Eu atualizarei em uma semana se isso realmente resolver o problema definitivamente.
edite: Uma combinação de matar conexões inativas no cliente e enviar um keep-alive do servidor a cada 2 minutos fez com que esse problema desaparecesse.