उल्का जावास्क्रिप्ट फ्रेमवर्क कैसे काम करता है? [बन्द है]


108

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

लेकिन उल्का में ये चीजें कैसे काम करती हैं? उल्का के विभिन्न भाग एक दूसरे से कैसे संबंधित हैं?



8
यह एक रचनात्मक, तथ्यात्मक सवाल है। कोई भी मान्य उत्तर "तथ्यों, संदर्भों या विशिष्ट विशेषज्ञता द्वारा समर्थित" होगा। जाहिरा तौर पर कैस्पर ओने ने प्रश्न को गलत समझा है या प्रश्न को रचनात्मक नहीं बनाने के मानदंड।
चार्ली फूल

3
लेकिन यह प्रश्न संभवतः "विस्तारित चर्चा" को हल करेगा और इसका "उत्तर" उत्तर नहीं होगा।
डुर्रोन 597

9
@ durron597 मुझे लगता है कि आप कह रहे हैं कि सवाल का जवाब बहुत बड़ा है (मुझे गलत समझा है तो सही)। मैं इसे देख सकता हूं, लेकिन यह "रचनात्मक नहीं" होने के समान नहीं है। बॉयलरप्लेट सारांश में "रचनात्मक नहीं" की परिभाषा नीचे दिखाई देती है, जिससे यह स्पष्ट होता है कि "रचनात्मक नहीं" टैग गैर-वस्तुनिष्ठ प्रश्नों के लिए है। यह प्रश्न 100% वस्तुनिष्ठ है। उल्का इसके काम करने के तरीके को बताता है। यदि कई राय यहाँ दिखाई देने लगी हैं, तो उनमें से सभी गलत हैं।
चार्ली फूल

@mplungjan मुझे इनमें से कोई भी उत्तर संतोषजनक नहीं लगता है क्योंकि उनमें से कोई भी "वायर पर उल्का सिद्धांत को पर्याप्त रूप से संबोधित नहीं करता है। उल्का नेटवर्क पर HTML नहीं भेजता है। सर्वर डेटा भेजता है और क्लाइंट को इसे प्रस्तुत करने देता है।" 7 सिद्धांतों का पहला सिद्धांत।
अलेक्जेंडर मिल्स

जवाबों:


81

उल्का एक ढांचा है जो वास्तविक समय में HTML को अद्यतन करता है।

उल्का की सुंदरता यह है कि आपको केवल टेम्प्लेट और डेटा मॉडल बनाने की आवश्यकता है। सामान्य बॉयलरप्लेट कोड के शेष भाग को छिपा दिया गया है। आपको सभी सिंक-इंग कोड लिखने की आवश्यकता नहीं है।

इन टुकड़ों का उपयोग करके उल्कापिंड के प्रमुख टुकड़े खुद बनाए जा सकते हैं:

  • यह प्रदान करता है templating कि आप अपडेट हो जाता है जब आपके डेटा मॉडल है। यह आमतौर पर Backbone.js , Ember.js , Knockout.js , या किसी अन्य टूल का उपयोग करके किया जाता है ।

  • क्लाइंट / सर्वर संदेश सेवा के माध्यम से किया जाता है WebSockets की तरह कुछ का उपयोग कर socks.js या socket.io

  • MongoDB के लिए ग्राहक के पक्ष कनेक्शन वास्तव में शांत है। यह क्लाइंट में MongoDB- सर्वर ड्राइवर की प्रतिकृति बनाता है। दुर्भाग्य से, पिछले मैंने जाँच की, वे अभी भी इस डेटाबेस कनेक्शन को सुरक्षित करने पर काम कर रहे थे।

  • विलंबता मुआवजा बस पहले क्लाइंट साइड मॉडल अपडेट कर रहा है, तो सर्वर-सर्वर के लिए अद्यतन भेज दिया।

वहाँ अन्य साफ टुकड़े हो सकते हैं कि आप उल्का साइट पर, या गिटहब पर पा सकते हैं ।


10
हालांकि अच्छा है, यह वास्तव में सवाल का समाधान नहीं करता है।
कैदी जीरो

2
शायद यह प्रश्न में छिपे प्रश्न का उत्तर देता है
मुहम्मद उमर

1
इस उत्तर में स्पष्ट रूप से कहा गया है कि उल्का वेबस्केट्स का उपयोग करके सभी क्लाइंट / गंभीर संचार करता है। मुझे लगता है कि इस सवाल का जवाब भी दिया।
उस्मा अहमद

उल्का js और नोड js अभी भी v0.9 में संबंधित है?
योजाविरतमा २

28

अस्वीकरण : इस जवाब का वर्णन करता है उल्का , के लिए जावास्क्रिप्ट क्लाइंट लाइब्रेरी उल्का सर्वर । यह मूल रूप से प्रश्न में अस्पष्टता के कारण जोड़ा गया था, और समान उत्तरों की खोज करने वाले आगंतुकों द्वारा सामना की गई समान अस्पष्टताओं को स्पष्ट करने के उद्देश्य से काम कर सकता है, लेकिन अंतर के बारे में अनिश्चित।

के बारे में पढ़ने के लिए उल्का जावास्क्रिप्ट ढांचे , कृपया देखें इस जवाब से xer0x

जैसा कि उल्का सर्वर के प्रलेखन पर उल्लिखित है, उल्का धूमकेतु का एक कार्यान्वयन है । बदले में धूमकेतु AJAX का एक प्रतिरूप है ।

AJAX के मामले में, आप आमतौर पर एक अनुरोध करते हैं जब ग्राहक को ऐसा करने की आवश्यकता होती है। सर्वर से अपडेट खींचने के लिए, आपको सर्वर को कॉल करना होगा। हर 5 सेकंड।

धूमकेतु के मामले में, सर्वर से अपडेट तेजी से आता है, क्योंकि कनेक्शन लगातार है। AJAX के रूप में क्लाइंट द्वारा कनेक्शन स्थापित किया गया है, लेकिन सर्वर तब तक प्रतिक्रिया नहीं देता है जब तक कि इसमें कुछ अपडेट न हो या यह निष्पादन सीमा तक पहुंच जाता है (सर्वर पर स्क्रिप्ट्स में निष्पादन सीमाएं हो सकती हैं)।

उल्का के मामले में आपको केवल डेटा की निरंतर धारा मिलती है जो कुछ विशिष्ट सर्वर-साइड कोड (जैसे उल्का सर्वर) और क्लाइंट पर उपयुक्त कोड की आवश्यकता होती है (इस मामले में ऐसा लगता है कि यह उल्का वर्ग है)।


1
Meteor है और Meteor Server है। मुझे लग रहा है कि मूल प्रश्न पूर्व के बारे में था और यह उत्तर उत्तर के बारे में था? meteor.com और meteorserver.org
ile

2
नहीं, Meteor.com सामान धूमकेतु का एक उन्नत रूप है। विशेष रूप से यह लंबे मतदान का उपयोग करता है, आप इसे क्रोम देव टूल्स में देख सकते हैं।
wmil

1
@ile: हाँ, Meteor ( github.com/meteor/meteor ) नामक जावास्क्रिप्ट फ्रेमवर्क है और Meteor.js , Meteor Server ( meteorserver.org/client-docs ) के लिए क्लाइंट पार्ट है । मेरा मानना ​​है कि यह प्रश्न यह बताने के लिए बहुत अस्पष्ट है कि इनमें से कौन सा ओपी वास्तव में ध्यान में था।
टाडेक

5
@ile दरअसल, मुझे meteor.com में दिलचस्पी थी। मैं वास्तव में आपकी टिप्पणी से पहले meteorserver.org के बारे में नहीं जानता था।
जतिन

2
Meteor.js ढांचा उल्का http सर्वर नहीं है। उन लोगों के खराब नामकरण के बावजूद, जिन्होंने रूपरेखा बनाई। अधिक के लिए meteor.com देखें ।
xer0x

25

लाइव डेटा अपडेट के साथ सारा जादू निर्भरता ट्रैकिंग सिस्टम के कारण हो रहा है। यह कैसे काम करता है इसका एक विवरण प्रलेखन के ट्रैकर अनुभाग में पाया जा सकता है ।


Meteor.deps का नाम बदलकर Meteor.tracker कर दिया गया है। स्रोत यहाँ
बेंजामिन क्राउज़िएर

मुझे लगता है कि इसे docs.meteor.com/#/full/tracker पर
नीमर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.