Eine lange Verbindung bedeutet, dass mehrere Datenpakete kontinuierlich auf einer Verbindung gesendet werden können. Wenn während der Verbindungserhaltungsperiode keine Datenpakete gesendet werden, müssen beide Parteien häufig Verbindungserkennungspakete senden Operationen und Punkt-zu-Punkt-Kommunikation. Und die Anzahl der Verbindungen kann nicht zu groß sein.
Eine lange Verbindung ist:
1. Definition
短连接
bedeutet, dass beim Datenaustausch zwischen den kommunizierenden Parteien eine Verbindung hergestellt wird. Nach dem Senden der Daten wird die Verbindung getrennt, dh jede Verbindung schließt nur das Senden eines Geschäfts ab.
长连接
bedeutet, dass mehrere Datenpakete kontinuierlich über eine Verbindung gesendet werden können. Wenn während der Verbindungserhaltungsperiode keine Datenpakete gesendet werden, müssen beide Parteien Verbindungserkennungspakete senden.
长连接
wird hauptsächlich für häufige Vorgänge und Punkt-zu-Punkt-Kommunikation verwendet und die Anzahl der Verbindungen darf nicht zu groß sein. Jede TCP-Verbindung erfordert einen dreistufigen Handshake, der einige Zeit in Anspruch nimmt. Wenn es sich bei jeder Operation um eine kurze Verbindung handelt, wird die Verarbeitungsgeschwindigkeit erheblich verringert, wenn sie erneut ausgeführt wird. Daher werden die Daten nicht nach jeder Operation getrennt wird bei der nächsten Verarbeitung direkt gesendet. Das Paket ist in Ordnung und es ist keine TCP-Verbindung erforderlich. Beispiel: Die Datenbankverbindung verwendet eine lange Verbindung für die häufige Kommunikation, es kommt zu Socket-Fehlern und die häufige Socket-Erstellung ist ebenfalls eine Verschwendung von Ressourcen.
Und HTTP-Dienste wie WEB-Websites verwenden im Allgemeinen kurze Links, da lange Verbindungen bestimmte Ressourcen für den Server verbrauchen, und wie bei WEB-Websites gibt es so häufig Tausende oder sogar Hunderte Millionen von Client-Verbindungen Wenn Sie eine lange Verbindung verwenden und Tausende von Benutzern gleichzeitig vorhanden sind, ist es denkbar, dass jeder Benutzer eine Verbindung belegt. Daher ist die Parallelität groß, aber jeder Benutzer muss eine kurze Verbindung verwenden, wenn er keine häufigen Vorgänge benötigt.
Kurz gesagt, die Wahl zwischen langer und kurzer Verbindung hängt von der Situation ab.
Verwandte Lernempfehlungen: PHP Programmieren vom Anfänger bis zum Experten
2. Anwendung
(1), Handy-Push-Prinzip
Das Prinzip des Mobiltelefon-Push-Dienstes ist sehr einfach: Durch den Aufbau einer Verbindungsverbindung zwischen dem Mobiltelefon und dem Server kann eine Nachricht, die an das Mobiltelefon gesendet werden muss, über diesen gesendet werden Link. Obwohl der Nutzungsprozess des Push-Dienstes etwas anders ist, ähnelt er im Allgemeinen dem APNS von IOS
1. Der erste Schritt besteht darin, die Anwendung für den Nachrichten-Push zu registrieren.
2. IOS- und APNS-Server erfordern DeviceToken. Die Anwendung akzeptiert deviceToken.
3. Die Anwendung sendet das DeviceToken an das PUSH-Serverprogramm.
4. Das Serverprogramm sendet eine Nachricht an den APNS-Dienst.
5. Der APNS-Dienst sendet Nachrichten an die iPhone-Anwendung
(2), Bewertungskriterien für Push-Lösungen
Die anerkannte Bewertung der Push-Lösung dauert 4 Sekunden Standards: 1.Sicher (sicher) 2. Stabil (stabil) 3.Speichern (Strom, Verkehr und Kosten sparen) 4.Schlank (kleine Größe)
1.Sicher (sicher)
Die Push-Lösung sollte eine transparente Übertragung und verschiedene Verschlüsselungslösungen unterstützen, um die Sicherheit der Informationsübertragung zu gewährleisten.
Das ID-System der Push-Lösung sollte unabhängig vom ID-System der vorhandenen Website oder des vorhandenen Dienstes sein. Dies stellt die Genauigkeit der Informationsbereitstellung nach der Anmeldung der Benutzer auf verschiedenen Mobiltelefonen sicher und vermeidet Netzwerkübertragungsfehler aufgrund von Fehlern von unverbindlichen Ereignissen, die zu einer Fehlübermittlung von Informationen führen.
2. Stabilität
Stabilität umfasst zwei Teile: Zum einen die Stabilität der Serverseite und zum anderen die Stabilität der Mobiltelefonseite.
Serverseitige Stabilität, da die Verwendung langfristiger Verbindungslösungen einen hohen Overhead und hohe Anforderungen an den Server stellt. Die Serverstabilität ist bei massiven Thread-Verbindungen sehr anspruchsvoll. Zu den allgemeinen Bewertungskriterien gehören:
- Spitzenwert, wenn gleichzeitig online (im Allgemeinen als Serverstabilität bewertet, wenn eine Million gleichzeitige Verbindungen hergestellt werden)
- Durchschnittliche Nachrichtenverzögerungszeit, wenn die Parallelität hoch ist ( im Allgemeinen verarbeitet als 1 Minute) 1 Million Informationsüberprüfungen)
- Dienststabilität (im Allgemeinen erforderlich, um mehr als 99,9 % das ganze Jahr über verfügbar zu sein, mit Backup, Lastausgleich usw.)
In Angesichts der Schwierigkeit, einen stabilen Server zu entwickeln, wird kleinen Teams nicht empfohlen, stabile Push-Lösungen von Drittanbietern wie Getui, Butterfly usw. zu verwenden.
Die Stabilität des Mobiltelefons ist hauptsächlich auf die komplexen Netzwerkbedingungen und die Anpassung des Mobiltelefonmodells in China zurückzuführen, die es für Mobiltelefone schwierig machen, über einen längeren Zeitraum eine stabile Verbindung zum Internet herzustellen. Daher ist Stabilität sehr wichtig. Zu den allgemeinen Bewertungskriterien gehören:
- Der Anteil der Benutzer, die mehr als 23,5 Stunden am Tag mit dem Internet verbunden sind (was die Stabilität des Internets anzeigt)
- Die Empfangsrate innerhalb von 9 Stunden nach dem Senden der Nachricht (Angabe der Ankunftsrate)
Im Allgemeinen ist der Arbeitsaufwand für die Eigenentwicklung bei Push-Lösungen zur Anpassung des Netzwerks an verschiedene Betreiber, Provinzen und Modelle relativ groß
3.Speichern
Energiesparanwendung Achten Sie auf den CPU-Ruhezustand, der im Allgemeinen anhand des Prozentsatzes der verkürzten Standby-Zeit beurteilt wird
Um Datenverkehr zu sparen, sollte darauf geachtet werden Um Kosten zu sparen, wird im Allgemeinen auf die Änderung des Protokolls und die Verarbeitung redundanter Datenpakete geachtet. Je mehr gleichzeitige Verbindungen möglich sind, desto niedriger sind die Kosten. Das Top-Level in der Branche ist der Einzelserver von GeTui mit 500.000 Verbindungen
Slim (kleine Größe) Der Push-Dienst sollte so klein wie möglich sein, ohne die Größe und Komplexität des Hauptprogramms zu beeinträchtigen. Im Allgemeinen sollte er weniger als 300 KB betragen.
Das obige ist der detaillierte Inhalt vonWas ist eine lange Verbindung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!