2012-04-23 3 views
8

कुछ सेकंड के लिए मेरा नेटवर्क कनेक्शन बूँदें और मुझे कुछ सिग्नल सर्वर-धक्का संदेश याद आते हैं।सिग्नलआर याद किए गए संदेशों को संभाल सकता है?

जब मैं नेटवर्क कनेक्टिविटी प्राप्त करता हूं तो क्या वे संदेश खो गए हैं? या सिग्नलआर उन्हें संभालता है और जब मैं दोबारा कनेक्ट करता हूं तो उन्हें बाहर धक्का देता है?

यदि यह मिस्ड संदेशों को संभाल नहीं सकता है, तो स्थिरता सुनिश्चित करने के लिए अनुशंसित दृष्टिकोण क्या है?

  • सर्वर-डेटा की जांच करने के लिए समय-समय पर (2-3 मिनट) मतदान?
  • किसी भी तरह से ग्राहक की तरफ से नेटवर्क की हानि का पता लगाने और नेटवर्क बहाली पर डेटा प्राप्त करने के लिए AJAX कॉल करें?
  • कुछ और?

    आप प्रति सेकंड बहुत से संदेश भेज रहे हैं तो, संदेशों को अपने आप में कोई डेटा भेजने पर विचार करें:

उत्तर

7

यहाँ विचारों के एक जोड़े हैं। इसके बजाए, संदेश केवल क्लाइंट को "पिंग" है जो उन्हें सर्वर डेटा प्राप्त करने के लिए कहने के लिए कह रहा है। जैसा कि आपने कहा था, एक आवधिक मतदान के साथ, और आपको आश्वासन दिया जा सकता है कि आप संदेशों को याद नहीं करेंगे। वे बस देरी हो सकती है।

यदि आप बहुत से संदेश भेज रहे हैं, तो प्रत्येक को अनुक्रमिक आईडी जोड़ने के बारे में कैसे? एसक्यूएल पहचान कॉलम के बारे में सोचें। आपके ग्राहकों को प्राप्त सबसे हालिया आईडी का ट्रैक रखने की आवश्यकता होगी। नेटवर्क रीकनेक्ट करने के बाद, ग्राहक [अंतिम आईडी] के बाद से सभी संदेशों के लिए पूछ सकता है। अगर कोई संदेश प्राप्त होता है जिसका आईडी हाल ही में प्राप्त होने के साथ संगत नहीं है, तो आप जानते हैं कि एक डिस्कनेक्ट था और लापता जानकारी के लिए सर्वर से पूछ सकता है।

+1

दिलचस्प विचार, मुझे दूसरा पसंद है, हालांकि अगर सिग्नल ने हमारे लिए इस कार्यक्षमता को लपेट लिया तो अच्छा होगा ... शायद बाद के संस्करण में मुझे लगता है! – reach4thelasers

+1

मैं समझता हूं कि आप क्या चाहते हैं, लेकिन संदेश के पीछे विचार आग और भूल गया है। तो मैं इसे सिग्नलआर का मुख्य टुकड़ा नहीं मानता। मैं कामकाज से सहमत हूं @ माइकसी एक अच्छा विकल्प के रूप में सुझाव देता है। –

+0

क्या हमारे पास सिग्नलआर में "यादृच्छिक रूप से ड्रॉप संदेश" चालू और बंद करने के लिए कोई विकल्प या सुविधा है? – Kurkula