Wie soll ich herausfinden, was ich für den Backlog-Parameter eines abhörenden Sockets verwenden soll? Ist es ein Problem, einfach eine sehr große Zahl anzugeben?Socket Listenback-Parameter, wie diesen Wert zu bestimmen?
Antwort
Von dem docs:
Ein Wert für den Rückstau von SOMAXCONN ist eine spezielle Konstante, die die zugrunde liegenden Service-Provider verantwortlich für Socket s weist die Länge der Warteschlange zu setzen Verbindungen zu einem maximalen angemessenen Wert der ausstehenden .
Es gibt eine sehr lange Antwort auf diese in der Winsock Programmer's FAQ. Es beschreibt die Standardeinstellung und die dynamische Rückmeldung, die in einem Hotfix zu NT 4.0 hinzugefügt wird.
Fantastische Antwort in dieser FAQ; danke für das Teilen. Empfohlen. –
Das hat mir wirklich geholfen. Vielen Dank. – Nyerguds
Ich zweite mit SOMAXCONN, es sei denn, Sie haben einen bestimmten Grund, eine kurze Warteschlange zu verwenden.
Beachten Sie, dass, wenn in der Warteschlange für eine neue Verbindung kein Platz ist, keine RST gesendet wird und der Client automatisch weiter versucht, eine Verbindung herzustellen, indem er SYN erneut überträgt.
Auch das Backlog-Argument kann unterschiedliche Bedeutungen in verschiedenen Socket-Implementierungen haben.
Als Warnung an alle, die Boost Asio verwenden, wird der Wert SOMAXCONN als 5 mit Boost verwendet.
Könnte Boost das Betriebssystem nach diesem Wert fragen? Die FAQ, die in einer anderen Antwort verlinkt sind, legen nahe, dass 5 das wahre Maximum auf mindestens einigen Betriebssystemen ist. –
@romkyns Auf mindestens einigen Versionen von Windows, die in etwa 1992 vorhanden waren. – EJP
- 1. Android, Java, Socket, bestimmen Remote-Host trennen
- 2. Wie Tupeltypen zu bestimmen?
- 3. insgesamt gegeben, zu bestimmen, wie oft ein Wert in sie
- 4. Wie zu bestimmen, ob Wert ein Datum in PHP ist
- 5. Delphi: Wie bestimmen und leeren TDateTime-Wert
- 6. Wie Socket Verbindungsverlust zu simulieren?
- 7. Wie Android-Internetverbindung zu bestimmen?
- 8. Wie bekomme ich diesen Wert als CGFloat?
- 9. Wie behebe ich diesen Wert Code
- 10. Ich muss diesen Wert Schleife?
- 11. JavaScript Prototyp Objekt diesen Wert
- 12. Meteor Mongo diesen Wert erhalten
- 13. Magic COLORREF/RGB-Wert zu bestimmen, wann hell/dunkel Text
- 14. Get Button Text Wert, um Variablenwert zu bestimmen
- 15. Wie zu bestimmen, kleinste Breite von Android-Gerät
- 16. Wie zu bestimmen, wenn fancybox geöffnet ist?
- 17. wie USB-Flash-Laufwerk Hersteller zu bestimmen?
- 18. wie zu bestimmen, ob Webseite geändert wurde
- 19. Wie zu bestimmen, ob ServletRequest PreflightRequest ist?
- 20. Wie die Basis einer Nummer zu bestimmen?
- 21. Wie zu bestimmen, ob GraphicsEnvironment vorhanden ist
- 22. Wie bestimmen Sie den maximalen langen Wert in Objective-C?
- 23. Was gibt clojure 'val' diesen Wert zurück?
- 24. Wie eine Zeichenfolge zu bestimmen ist Englisch oder Persisch?
- 25. Wie Socket-Kommunikation in Android zu tun?
- 26. Wie Socket mit Timeout zu akzeptieren
- 27. Wie zu lösen Java7 nio Socket WritePendingException?
- 28. Wie ändere ich Berechtigungen zu einem Socket?
- 29. Wie analysiert man diesen zurückgegebenen Wert in PHP
- 30. Wie kann ich diesen Wert mit XPATH in JMeter bekommen
Schreckliche Antwort. Was sind solche "vernünftigen Werte"? – Nyerguds
Ich muss zustimmen, das beantwortet die Frage überhaupt nicht. – spuriousdata
Warum wurde diese Pseudoansage akzeptiert? –