2011-06-18 99 views
5

मैं एक करीबी वास्तविक समय वेब आधारित चैट सिस्टम विकसित करना चाहता हूं। JQuery के माध्यम से इसे कार्यान्वित करने के बारे में कोई सुझाव, किसी भी गॉथस को देखने के लिए, और यह धूमकेतु चीज़ क्या है जिसके बारे में मैं पढ़ रहा हूं?वेब आधारित टेक्स्ट चैट?

आदर्श रूप से, मैं लगभग 5,000 समवर्ती चैटर्स का समर्थन करना चाहता हूं।

उत्तर

3

धूमकेतु, जिसे अजाक्स पुश भी कहा जाता है, को अक्सर "रिवर्स AJAX" के रूप में जाना जाता है। नियमित अंतराल में सर्वर से जानकारी खींचने के बजाय, जब आवश्यक हो तो डेटा सर्वर से ब्राउजर पर धकेल दिया जाता है। इसके लिए एक खुला कनेक्शन की आवश्यकता है, जिसके लिए कई कार्यान्वयन हैं।

मैं अनुशंसा करता हूं कि आप APE का उपयोग करें। http://www.ape-project.org/demos/1/ape-real-time-chat.html

  • लाभ:: यहाँ एक डेमो है यह बहुत संवेदनशील और वास्तविक समय होगा।
  • नुकसान: को वेबसर्वर मशीन पर एपीई सर्वर सेट करने के लिए आपको की आवश्यकता है।
3

धूमकेतु एक "पुश" टेक्नोलॉजी है, जो सर्वर को लगातार मतदान करने के लिए क्लाइंट (जावास्क्रिप्ट कोड) से बचने के लिए बनाया गया है। इससे बैंडविड्थ समस्या हो सकती है, क्योंकि आपको एक नया टीसीपी कनेक्शन बनाना (शायद) बनाना है, फिर http सर्वर से संपर्क करें, वह कुछ सर्वर-साइड लॉजिक चलाता है और फिर क्लाइंट को प्रतिक्रिया भेजता है। धूमकेतु के साथ, यदि सर्वर तय करता है कि आपको कुछ जानकारी (उदा।, नया चैट संदेश) दोबारा जोड़ना चाहिए तो वह सीधे इसे ग्राहक को भेज देगा।

कई अलग-अलग कार्यान्वयन हैं, आप here शुरू कर सकते हैं।

सबसे सरल कार्यान्वयन टेक्निकिक छिपी हुई आईफ्रेम है, लेकिन मैं लंबे मतदान के बारे में सोचता हूं जो अधिक नियंत्रण योग्य है।

एक और बात, HTML5 websokets पर एक नज़र है thake, जो (बहुत, मौजूदा ब्राउज़र के साथ संगत नहीं वैसे भी) node.js. के लिए

1

चेक बाहर Node.js और nowjs आपकी समस्या के लिए एक दिलचस्प समाधान हो सकता है Node.js आपको सर्वर साइड जावास्क्रिप्ट का उपयोग करके बहुत ही कुशल सर्वर बनाने में मदद करता है और Nowjs एक लाइब्रेरी है जो आपको वास्तविक समय वेब ऐप्स बनाने की अनुमति देती है। यहां एक उदाहरण स्क्रीन कास्ट भी है जो कोड की 12 लाइनों में मूल चैट एप्लिकेशन को एक साथ रखता है।

आप Socket.io भी चेकआउट कर सकते हैं जो एक और नोड लाइब्रेरी है जो आपको विभिन्न परिवहन तंत्रों को दूर करके वास्तविक समय ऐप्स बनाने में मदद करता है और आपको कोड के लिए एक एकीकृत इंटरफ़ेस प्रदान करता है (वेबसाकेट, फ्लैश सॉकेट, AJAX लंबे मतदान, JSONP मतदान और समर्थन करता है) हमेशा के लिए IFrames)।

मुझे एहसास है कि आपने अपना प्रश्न PHP टैग किया है, लेकिन यदि आप कम से कम प्रयास (अपेक्षाकृत बोलने) के साथ स्केलेबल सिस्टम लिखने पर गंभीरता से विचार कर रहे हैं तो नोड.जेएस सीखना आपके समय के लायक है (और सीखने की अवस्था तब तक खड़ी नहीं है आप शायद पहले ही जेएस जानते हैं)।

+0

2013 तक socket.io/node.js कॉम्बो इस तरह के परिदृश्य में उपयोग के लिए व्यापक रूप से स्वीकार्य समाधान बन गया है। –

संबंधित मुद्दे