WebSocket Ping έναντι TCP Keepalive μέσω διαμεσολαβητή
Επιλέξτε έλεγχο ζωτικότητας για τον ομότιμο WebSocket αντί να θεωρείτε ζωντανή υποδοχή TCP απόδειξη ότι η διαδρομή εφαρμογής ανταποκρίνεται.
Μια ζωντανή υποδοχή TCP, ένας ομότιμος WebSocket που απαντά και ουσιαστική πρόοδος της εφαρμογής είναι διαφορετικές παρατηρήσεις:
| Απόδειξη | Τι τεκμηριώνει |
|---|---|
| Ζωτικότητα σε επίπεδο TCP | Η ελεγχόμενη διαδρομή μεταφοράς απαντά σε αυτό το επίπεδο |
| Αντίστοιχο WebSocket Pong | Ο ομότιμος απάντησε σε αυτό το πλαίσιο ελέγχου |
| Επιβεβαίωση της εφαρμογής | Η εφαρμογή επιβεβαίωσε μια πράξη βάσει του δικού της πρωτοκόλλου |
Ένας πρόσθιος διαμεσολαβητής συνήθως διατηρεί χωριστές συνδέσεις προς τον πελάτη και προς τον προορισμό. Ο ομότιμος TCP του πελάτη είναι ο διαμεσολαβητής, ενώ ένα Ping μέσα σε εγκατεστημένη σήραγγα ταξιδεύει στο τελικό σημείο WebSocket.
Αντίστοιχο Pong
Το πρωτόκολλο απαιτεί το απαντητικό Pong να μεταφέρει τα δεδομένα εφαρμογής του Ping. Χρησιμοποιήστε αυτή την αντιστοιχία για να αναγνωρίσετε μια εκκρεμή δοκιμή. Ένα Pong που δεν ζητήθηκε επιτρέπεται, αλλά δεν ζητά επιβεβαίωση· η αποστολή του μετά από κάθε μήνυμα δεδομένων παρέχει διαφορετική απόδειξη.
Προτιμήστε τον υποστηριζόμενο μηχανισμό καρδιακού παλμού της βιβλιοθήκης. Η JavaScript του προγράμματος περιήγησης χρειάζεται αντίθετα ένα συμβόλαιο καρδιακού παλμού σε επίπεδο εφαρμογής. Επιλέξτε διαστήματα και κατώφλια αποτυχίας με βάση τον φόρτο εργασίας και την πολιτική δικτύου. Παύσεις χρονοπρογραμματισμού ή υπερφορτωμένος βρόχος συμβάντων μπορεί να χάσουν ένα επιθετικό κατώφλι χωρίς να αποδείξουν αποτυχία δικτύου.
Κρατήστε τον δέκτη σε λειτουργία
Ο πελάτης χρειάζεται συνεχή είσοδο και έξοδο για να λαμβάνει και να επεξεργάζεται πλαίσια ελέγχου. Ο αποκλεισμός αυτού του μηχανισμού μπορεί να κάνει μια τοπική στέρηση να φαίνεται διακοπή.
Το Ping δημιουργεί κίνηση σήραγγας, αλλά κάθε μεσάζων αποφασίζει τι ικανοποιεί την πολιτική αδράνειάς του. Κανένας καρδιακός παλμός δεν εγγυάται προστασία από απόλυτο όριο διάρκειας ζωής της σύνδεσης.
Ένας ομότιμος μπορεί να απαντά σε Ping ενώ η εφαρμογή του σταματά να παράγει ενημερώσεις, και μια ήσυχη συνδρομή μπορεί να είναι υγιής. Παρακολουθείτε το τελευταίο έγκυρο Pong και το σημαντικό συμβάν εφαρμογής χωριστά όταν και τα δύο μετρούν. Σε αποτυχία, διατηρήστε τη διαδρομή, τους χρόνους που πέρασαν και την εκκρεμή δοκιμή, και μετά κλείστε ή ανακτήστε μέσω του υποστηριζόμενου κύκλου ζωής.