प्रॉक्सी के माध्यम से WebSocket Ping बनाम TCP Keepalive
जीवित TCP सॉकेट को यह प्रमाण मानने के बजाय कि अनुप्रयोग पथ उत्तर दे रहा है, WebSocket सहभागी के लिए जीवंतता जाँच चुनें।
जीवित TCP सॉकेट, उत्तर देता WebSocket सहभागी और उपयोगी अनुप्रयोग प्रगति अलग-अलग अवलोकन हैं:
| प्रमाण | यह क्या स्थापित करता है |
|---|---|
| TCP स्तर पर जीवंतता | जाँचा गया परिवहन पथ उस स्तर पर उत्तर देता है |
| मेल खाता WebSocket Pong | सहभागी ने उस नियंत्रण फ़्रेम का उत्तर दिया |
| अनुप्रयोग की पावती | अनुप्रयोग ने अपने प्रोटोकॉल के अंतर्गत किसी क्रिया की पुष्टि की |
फ़ॉरवर्ड प्रॉक्सी सामान्यतः क्लाइंट और गंतव्य की ओर अलग कनेक्शन रखता है। क्लाइंट का TCP सहभागी प्रॉक्सी है, जबकि स्थापित टनल के भीतर का Ping WebSocket अंतिम बिंदु तक जाता है।
मेल खाता Pong
प्रोटोकॉल माँगता है कि उत्तर देता Pong उस Ping का अनुप्रयोग डेटा ले जाए। उस मेल का उपयोग लंबित जाँच पहचानने के लिए करें। बिना माँगा गया Pong अनुमत है, पर वह पावती नहीं माँगता; हर डेटा संदेश के बाद एक भेजना भिन्न प्रमाण देता है।
लाइब्रेरी के समर्थित हार्टबीट तंत्र को प्राथमिकता दें। ब्राउज़र JavaScript को इसके बजाय अनुप्रयोग-स्तरीय हार्टबीट अनुबंध चाहिए। कार्यभार और नेटवर्क नीति के अनुसार अंतराल और विफलता सीमाएँ चुनें। शेड्यूलिंग में रुकावट या अति-भारित इवेंट लूप नेटवर्क विफल सिद्ध किए बिना आक्रामक सीमा चूक सकते हैं।
रिसीवर को चालू रखें
नियंत्रण फ़्रेम प्राप्त करने और संसाधित करने के लिए क्लाइंट को निरंतर इनपुट-आउटपुट चाहिए। उस तंत्र को अवरुद्ध करना स्थानीय कमी को रुकावट जैसा दिखा सकता है।
Ping टनल ट्रैफ़िक बनाता है, पर हर मध्यस्थ स्वयं तय करता है कि उसकी निष्क्रियता नीति क्या संतुष्ट करता है। कोई हार्टबीट कनेक्शन के आयु की पूर्ण सीमा से सुरक्षा की गारंटी नहीं देता।
सहभागी Ping का उत्तर दे सकता है जबकि उसका अनुप्रयोग अद्यतन बनाना बंद कर दे, और शांत सदस्यता स्वस्थ हो सकती है। जब दोनों मायने रखें तो अंतिम वैध Pong और सार्थक अनुप्रयोग घटना को अलग-अलग ट्रैक करें। विफलता पर मार्ग, बीता समय और लंबित जाँच रखें, फिर समर्थित जीवनचक्र से बंद करें या पुनर्प्राप्त करें।