नोड.जेएस बनाम उल्का.जेएस क्या अंतर है? [बन्द है]


88

इसलिए मैं उल्कापिंडों के बारे में बहुत कुछ सुन / पढ़ रहा हूं। ट्यूटोरियल इसे एक फ्रेमवर्क के रूप में बहुत स्पोर्टी लगता है, लेकिन मैं अभी भी एक नौसिखिया हूं जब यह वेब प्रोग्रामिंग की बात आती है।

मैं पिछले महीने और आधे से अधिक कोशिश कर रहा हूं कि वास्तव में नोड सीखें। जेएस और यह पता करें कि यह सब एक साथ कैसे आता है। मुझे यह पसंद है कि उठना और दौड़ना कितना तेज़ और आसान है, और इसके साथ आने वाला समुदाय (जो मनोदशा के हिसाब से उड़ता है, जिसे आप नोड के लिए प्राप्त कर सकते हैं)।

लेकिन उल्का के बारे में क्या? इसके वास्तविक फायदे क्या हैं, और क्या अंतर है? क्या किसी ने एक नोड.जेएस उपयोगकर्ता और 'रूपांतरित' के रूप में शुरू किया है या यह अभी भी एक जिज्ञासु नए ढांचे के अधिक है?

जवाबों:


159

एक ढीला सादृश्य है, "उल्का नोड के लिए है क्योंकि रेल रूबी के लिए है।" यह सर्वर पर नोड का उपयोग करने वाला एक बड़ा, राय वाला ढांचा है। नोड स्वयं ही एक निम्न-स्तरीय ढांचा है जो HTTP अनुरोध भेजने और प्राप्त करने और अन्य I / O प्रदर्शन करने के लिए कार्य प्रदान करता है।

उल्का मौलिक रूप से महत्वाकांक्षी है: डिफ़ॉल्ट रूप से, प्रत्येक पृष्ठ जो कार्य करता है वह वास्तव में एक हैंडल टेम्पलेट है जो सर्वर के साथ सिंक में रखा जाता है। लीडरबोर्ड उदाहरण का प्रयास करें : आप एक टेम्पलेट बनाते हैं जो बस कहता है "नामों और अंकों को सूचीबद्ध करें", और हर बार जब कोई भी ग्राहक नाम या स्कोर बदलता है, तो पृष्ठ नए डेटा के साथ अपडेट करता है - न केवल उस क्लाइंट के लिए, बल्कि सभी को देखने वाले के लिए। पृष्ठ।

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

यदि आप नई तकनीकों के साथ खेलना पसंद करते हैं, तो उल्का को एक स्पिन दें। यदि आप नोड पर निर्मित अधिक पारंपरिक, स्थिर वेब फ्रेमवर्क चाहते हैं, तो एक्सप्रेस पर एक नज़र डालें ।


2
क्या पिछले साल से उल्का ने अपने "गंभीर कीड़े" को सुधार लिया है?
danorton

3
@danorton हां, मैं इतना जरूर कहूंगा। कुछ अनुप्रयोगों के लिए, उल्का अब काफी व्यवहार्य है, साथ ही साथ विकसित करने के लिए एक परम आनंद है।
ट्रेवर बर्नहैम

4
यह भी ध्यान दें कि यह उत्तर अंततः पूरी तरह से सटीक नहीं होगा क्योंकि उल्का सक्रिय विकास में है और उसने काफी वित्तीय योगदान दिया है जो विकास के समय को गति देता है उम्मीद है कि इसे अपने "पूर्वावलोकन" चरण से बाहर लाएगा।
गोडार्ड

12

उल्का एक ढाँचा है जो नोड.जेएस पर निर्मित होता है। यह तैनात करने के लिए नोड का उपयोग करता है। लेकिन इसमें कई अंतर हैं।

यह कुंजी नोड के मॉड्यूल आधारित प्रणाली के बजाय अपने स्वयं के पैकेजिंग प्रणाली का उपयोग करता है। यह नोड का उपयोग करके वेब एप्लिकेशन बनाना आसान बनाता है। नोड का उपयोग विभिन्न प्रकार की चीजों के लिए किया जा सकता है और गतिशील वेब सामग्री को परोसने में भयानक है। उल्का के पुस्तकालय इस सब को आसान बनाते हैं।


4
संस्करण 0.6.0 में अब एनपीएम मॉड्यूल के लिए प्रत्यक्ष समर्थन है meteor.com/blog/2013/04/04/…
मैक्स होजेस

9

उल्का की ताकत इसमें वास्तविक समय की अद्यतन सुविधा है, जो आजकल आपके द्वारा देखे जाने वाले कुछ सामाजिक अनुप्रयोगों के लिए अच्छी तरह से काम करती है, जहाँ आप जिस चीज़ पर काम कर रहे हैं, उसके लिए सभी के अपडेट देखें। ये अद्यतन केंद्र स्थानीय मिनी-मोंगो (उनके क्लाइंट साइड MongoDB सबसेट) डेटाबेस अपडेट के रूप में कवर के नीचे एक MongoDB संग्रह के सबसेट के प्रतिकृति के आसपास आपके वेब ब्राउज़र पर डेटाबेस अपडेट (जो आपके टेम्प्लेट पर कई रेंडर किए गए ईवेंट को प्रस्तुत करता है)। कई रेंडर अपडेट के बारे में बाद वाला हिस्सा भी कमजोरी है। यदि आप चाहते हैं कि जब UI रीफ़्रेश हो जाए (उदाहरण के लिए, क्लासिक jQuery AJAX पृष्ठ जहाँ आप HTML लोड करते हैं और आप सभी AJAX कॉल और UI अपडेट नियंत्रित करते हैं) को नियंत्रित करने के लिए, तो आप इस तंत्र से लड़ रहे होंगे।

उल्का Node.js प्लगइन्स (Handlebars.js, Spark.js, बूटस्ट्रैप सीएसएस, आदि का एक अच्छा ढेर का उपयोग करता है, लेकिन भंडारण परत के लिए w / MongoDB के साथ नीचे के साथ साथ यह npm के बजाय अपने स्वयं के पैकेजिंग तंत्र का उपयोग कर) जो आपके पास नहीं है के बारे में सोचो। लेकिन कभी-कभी आप इसे समाप्त करने के साथ-साथ लड़ते भी हैं ... उदाहरण के लिए, यदि आप बूटस्ट्रैप थीम को कस्टमाइज़ करना चाहते हैं, तो यह बूटस्ट्रैप के उत्तरदायी के लोडिंग अनुक्रम को गड़बड़ कर देता है। इसलिए यह अब उत्तरदायी नहीं है (लेकिन संभवतः बूटस्ट्रैप के दौरान यह अपने आप ठीक हो जाएगा। 3.0 जल्द जारी किया जाता है)।

तो सभी "पूर्ण स्टैक फ्रेमवर्क" की तरह, जब तक आपका ऐप फिट हो जाता है तब तक चीजें बहुत अच्छी होती हैं। एक बार जब आप उस दायरे से परे चले जाते हैं और किनारे की सीमाओं को धक्का देते हैं, तो आप रूपरेखा से लड़ सकते हैं ...


2
उल्का V0.6.0 + में npm एकीकरण है: meteor.com/blog/2013/04/04/…
मानव कटारिया
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.