वेब-अनुप्रयोगों ने पिछले वर्षों में एक महान प्रतिमान बदलाव का अनुभव किया।क्या वेब-आधारित रीयल-टाइम संचार आरईएसटी प्रतिमान के साथ असंगत है?
एक दशक पहले (और दुर्भाग्य से भी आजकल), वेब अनुप्रयोगों केवल heavyweighted सर्वर में रहते थे, प्रसंस्करण डेटा से प्रस्तुति प्रारूपों के लिए सब कुछ और गूंगा ग्राहकों जो केवल सर्वर (ब्राउज़र) के उत्पादन में प्रदान की गई करने के लिए भेज दिया।
फिर AJAX गेम में शामिल हो गया और वेब-एप्लिकेशन सर्वर और ब्राउज़र के बीच रहने वाली किसी चीज़ में बदलना शुरू कर दिया।
AJAX के चरम सीमा के दौरान, वेब-एप्लिकेशन तर्क पूरी तरह से ब्राउज़र पर लाइव होना शुरू कर दिया। मुझे लगता है कि यह तब था जब HTTP रीस्टफुल एपीआई उभरना शुरू कर दिया था। अचानक हर नई सेवा में दयालु रीस्टफुल एपीआई, और अचानक जावास्क्रिप्ट एमवी * ढांचे पॉपकॉर्न की तरह पॉपिंग शुरू कर दिया। मोबाइल उपकरणों का उपयोग भी काफी बढ़ गया है, और आरईएसटी इस तरह के परिदृश्यों के लिए बस महान है। मैं यहां "तरह का भरोसेमंद" कहता हूं क्योंकि लगभग हर एपीआई जो आरईएसटी होने का दावा करती है, वह नहीं है। लेकिन यह एक पूरी तरह से अलग कहानी है।
असल में, मैं एक प्रकार का "आरईएसटी प्रचारक" बन गया।
जब मैंने सोचा कि वेब-एप्लिकेशन अधिक विकसित नहीं हो पा रहे हैं, तो एक नया युग शुरू हो रहा है: राज्यव्यापी लगातार कनेक्शन वेब-एप्लिकेशन। Meteor उस तरह के अनुप्रयोगों के एक शानदार ढांचे का एक उदाहरण है। तब मैंने यह video देखा। इस वीडियो में मैट डेबर्गलिस ने उल्का के बारे में बात की और दोनों शानदार काम करते हैं! हालांकि वह लगातार वास्तविक समय कनेक्शन के पक्ष में इस तरह के उद्देश्यों के लिए आरईएसटी एपीआई को कम करने का है।
मुझे वास्तविक समय मॉडल अपडेट होना बहुत पसंद है, उदाहरण के लिए, लेकिन अभी भी सभी आरईएसटी उत्कृष्टता है। स्ट्रीमिंग आरईएसटी एपीआई मुझे जो चाहिए (प्रतीत होता है कि फ़ायरहोज.ओ और ट्विटर की एपीआई, उदाहरण के लिए), लेकिन इस नए प्रकार के एपीआई पर बहुत कम जानकारी है।
तो मेरे सवाल है:
वेब आधारित वास्तविक समय संचार बाकी प्रतिमान के साथ असंगत है?
(लंबे परिचयात्मक पाठ के लिए क्षमा करें, लेकिन मैंने सोचा था कि इस सवाल का केवल कुछ संदर्भ के साथ कोई मतलब होता है) आप के रूप में कर रहे हैं महान है, जब तक वेब अनुप्रयोगों के लिए
REST हमें बताता है कि प्रत्येक अनुरोध में सभी आवश्यक जानकारी होनी चाहिए ताकि सर्वर स्टेटलेस हो और प्रत्येक अनुरोध को समान रूप से मान सके। यह मुख्य विशेषता है जो आरईएसटी वेब सेवाओं में स्केलेबिलिटी को सक्षम बनाता है। कोई सत्र नहीं है। क्या आपको लगता है कि सर्वर अभी भी निरंतर कनेक्शन (वेबसाकेट या http लंबे मतदान, उदाहरण के लिए) के साथ स्टेटलेस हो सकता है? – miguelcobain
@ मिगुएलकोबेन, मुझे लगता है कि एक सतत कनेक्शन को बनाए रखने का कार्य इसे राज्यपूर्ण बना देता है, भले ही यह कनेक्शन सेटअप/टियरडाउन से बचने के लिए प्रदर्शन कारणों से पूरी तरह से है। मेरे लिए स्टेटलेस का मतलब है कि प्रतिक्रिया भेजने के बाद बिल्कुल कोई राज्य बनाए रखा नहीं जाता है - कोई अपवाद नहीं है। एक सतत कनेक्शन के साथ, 'जिंदा रहें' और अन्य संदेश शामिल हो सकते हैं और सर्वर को कुछ घरों को रखना है जैसे कम से कम हाल ही में इस्तेमाल किए गए कनेक्शन आदि को बंद करना, जिनमें से सभी को स्टेटलेस सर्वर की अपेक्षा नहीं है। इसके अलावा, यदि वे कुकीज़ पर भरोसा करते हैं तो सर्वर प्रभावी रूप से प्रभावी होते हैं। –