Je suis confronté à un problème de connexion de socket wierd dans l'application .net windows. J'utilise socket de .net pour communiquer de façon asynchrone avec une base de données de cache intersystems héritée.
J'ai une valeur de délai spécifique dans l'application, lorsque le délai d'attente se produit, l'utilisateur est invité à rester connecté à l'application. Quand je dis rester connecté, la prise n'est pas réinitialisée.
Je définis le délai d'attente à 30 minutes et dis rester connecté pour le premier temps d'inactivité. Ensuite, lorsque je navigue dans l'application, cela fonctionne très bien. Si sans naviguer dans l'application et dire rester connecté la deuxième fois, et naviguer dans l'application, je reçois une erreur de connexion "hôte refusé" socket. Je peux supposer que la prise est terminée.
Mais la partie wierd est si je mets le délai d'attente de l'application à 10 minutes, alors aussi je reçois une erreur de socket deuxième fois. Quand je vérifie la propriété des prises connectées, c'est toujours vrai. Je ne suis pas attraper l'exception quand j'appelle la méthode d'envoi des sockets. Mais les données ne sont pas transmises depuis le socket. J'ai vérifié l'autre code .net. c'est bon. Ce problème se produit également rarement, seulement 1 fois sur 10. Toutes les suggestions seront grandement utiles.Erreur de connexion de socket
1
A
Répondre
2
Cela ressemble à un problème typique résultant de pare-feu ou d'autres paramètres TCP.
Les pare-feu peuvent déconnecter silencieusement la connexion si elle est inactive plus de x secondes. Comme le protocole TCP ne génère pas d'événement dans ce cas (similaire au simple retrait du câble réseau), il est fortement recommandé d'envoyer un message ping toutes les x secondes, afin que le pare-feu reste ouvert et que vous soyez sûr de être relié. Si le ping est manqué, le serveur déconnecte le client.
Questions connexes
- 1. Connexion de socket PostgreSQL
- 2. Erreur de socket C# 10022
- 3. C: délai de connexion socket
- 4. erreur de programmation Socket
- 5. erreur de socket winsock
- 6. AS3 Erreur de socket
- 7. Android Connexion Socket refusée
- 8. Python socket connexion timeout
- 9. Connexion socket avec coldfusion
- 10. Erreur de socket 'No route to host'
- 11. Erreur de lecture du socket C#
- 12. Connexion de serveur Javascript au socket
- 13. Connexion de socket SSL sur l'iPhone
- 14. connexion HTTP permanente vs connexion socket TCP
- 15. Qui ferme la connexion socket
- 16. service Web vs connexion Socket
- 17. connexion socket Test en Python
- 18. problème dans la connexion socket
- 19. erreur de connexion Zend
- 20. Connexion Erreur de page
- 21. erreur de connexion sharepoint
- 22. Contrôle de connexion - erreur
- 23. Erreur de connexion curl
- 24. Erreur de fonction socket() dans C
- 25. Python Socket aide (erreur de syntaxe)
- 26. erreur de socket Errno en python
- 27. Connexion à un socket à partir de l'application Android
- 28. cURL - connexion socket "suspendue" sous Linux
- 29. WCF: La connexion socket a été abandonnée
- 30. Erreur EAGAIN pour accepter sur le socket de blocage
BUt J'ai vérifié le pare-feu et il est éteint. Y a-t-il d'autres paramètres TCP qui peuvent avoir un effet? –
Avid - Je ne parle pas du pare-feu sur votre machine - je parle des pare-feu/commutateurs d'entreprise dans le réseau de votre entreprise. Comme indiqué précédemment, il existe également d'autres raisons pour lesquelles vous devriez envisager d'utiliser un protocole ping: il est recommandé d'utiliser un socket de travail pour simplifier les choses. – weismat