मैं अपनी वेबसाइट के लिए एक मूल छोटा AJAX shoutbox/चैट बना रहा हूं, लेकिन मुझे यकीन नहीं है कि सर्वर मतदान को कैसे कार्यान्वित किया जाए।जावास्क्रिप्ट चैट क्लाइंट के लिए सर्वर मतदान अंतराल
यहाँ बुनियादी कार्यक्रम प्रवाह मैं सोच रहा हूँ है:
- उपयोगकर्ता पृष्ठ पर आता है और, ग्राहक जावास्क्रिप्ट के साथ कोई URL अनुरोध करेंगे पिछले 10 संदेशों
- दूसरों के द्वारा भेजे गए संदेशों को प्राप्त करने के लिए दिखाया गया है एक टाइमस्टैम्प पैरामीटर (ग्राहक द्वारा प्राप्त अंतिम संदेश के मूल्य पर सेट)
- सर्वर उस टाइमस्टैम्प के बाद से सभी संदेशों (अधिकतम 10 तक) देता है।
एकमात्र मुद्दा यह है कि सर्वर को कितनी बार मतदान करना है। स्पष्ट रूप से इसे प्रत्येक बार एक नया संदेश जोड़ा जाने पर मतदान करना चाहिए, लेकिन जब आप केवल दूसरों के संदेशों को पढ़ रहे हों तो इसे स्वचालित रूप से अपडेट करने की आवश्यकता है।
क्या यह निर्धारित समय सीमा होनी चाहिए? उदाहरण: हर 10 सेकंड। या, क्या उपयोग के आधार पर यह अलग-अलग होना चाहिए? उदाहरण: 5 सेकंड के बाद जांचें। अगर कोई संदेश नहीं है, तो किसी और 10 सेकंड की जांच न करें। यदि अभी भी कोई नया संदेश नहीं है, तो 15 सेकंड में चेक करें, फिर 20, अधिकतम 30 सेकंड अधिकतम हो सकता है। प्रत्येक बार जब कोई नया संदेश पता चला है तो अपने टाइमर को 5 सेकंड तक रीसेट कर दें और फिर से शुरू करें।
मैं सर्वर पर अनावश्यक तनाव डालने के बारे में चिंतित हूं, इस पर विचार करते हुए कि हमारे पास सैकड़ों उपयोगकर्ता एक साथ ऑनलाइन हो सकते हैं।
... या क्या मुझे पूरी चीज़ गलत है? मूल जावास्क्रिप्ट चैट को लागू करने का कोई बेहतर तरीका है?
यही वही है जो पूछताछ के रूप में उल्लिखित है। क्या आपने पूरा सवाल पढ़ा? –
मुझे लगता है कि एक महत्वपूर्ण अद्यतन बनाम एक अनावश्यक अद्यतन के मुख्य बिंदु पर सूक्ष्म स्पष्टीकरण है। चैट उदाहरण के लिए, यदि कोई नई चैट है, जो गतिविधि को इंगित करती है, और मतदान अंतराल को एक छोटे अंतराल (सकारात्मक प्रतिक्रिया पाश) के लिए आधारभूत किया जाना चाहिए। यदि कोई सर्वेक्षण किया जाता है और कोई नई चैट नहीं होती है, तो अगले के लिए अंतराल बढ़ाना चाहिए (नकारात्मक प्रतिक्रिया पाश)। मुझे लगता है कि यह मतदान के साथ निपटने की एक सुंदर शक्तिशाली और कुशल विधि के लिए बनाता है। – Kzqai