2012-01-30 14 views
84

चूंकि मुझे नोड.जेएस के बारे में पता चला है, इसलिए मैं हमेशा इसके प्रशंसक रहा हूं। लेकिन आज मुझे SignalR मिला, जो एएसपी.NET के लिए वैकल्पिक एसिंक्रोनस - स्केलेबल - रीयलटाइम मॉडल प्रदान करता है।नोडज बनाम सिग्नलआर: हमें सर्वर-साइड जावास्क्रिप्ट की आवश्यकता क्यों है?

जहां तक ​​मुझे पता है, सिग्नलआर पर नोड.जेएस का मुख्य लाभ क्लाइंट-सर्वर के बीच कोड साझा कर रहा है (दूसरा लाभ यह होना चाहिए कि यह क्रॉस-प्लेटफार्म है), और सिग्नलआर का मुख्य लाभ एक और परिपक्व है ढांचा और बहुत बेहतर उपकरण (आईडीई) समर्थन। तो मुझे आश्चर्य है: अगर सिग्नल यहां है, तो क्या हमें विंडोज़ पर नोड.जेएस की आवश्यकता है? क्या Node.js के कोई फायदे हैं मुझे नहीं पता?

+23

यहां कुछ भ्रम प्रतीत होता है। Node.js एक विकास मंच है जबकि सिग्नल एएसपी.NET के लिए एक पुस्तकालय है। एक बेहतर तुलना node.js + socket.io बनाम ASP.NET + सिग्नलआर होगी। क्या यह प्रश्न स्पष्ट करने के लिए अद्यतन किया जा सकता है? – leggetter

+6

सही और गलत, सिग्नलआर .NET के लिए एक लाइब्रेरी है। – davidfowl

उत्तर

99

सिग्नलर सॉकेट.आईओ और नोड.जे.एस. के लिए एक व्यवहार्य विकल्प है। हालांकि सर्वर पर जावास्क्रिप्ट का उपयोग करने के अन्य कारण हैं।

  1. यह ढेर flattens। लगभग किसी भी वेबसाइट पर इन दिनों ब्राउज़र पर जावास्क्रिप्ट होना चाहिए, और यदि आप इसे सर्वर पर भी इस्तेमाल करते हैं, तो आप बैच के बाहर एक भाषा काट सकते हैं जिसमें आपको कुशल होना होगा।

  2. संदेश पास बहुत स्वाभाविक है। JSON हर जगह! विशेष रूप से जेएसओएन का उपयोग करने वाले दस्तावेज़ डेटाबेस के साथ संयुक्त, सभी संदेश पास करने से JSON ऑब्जेक्ट बन जाता है। इससे पूरे सिस्टम में होने वाली संदेश ब्रोकिंग की मात्रा कम हो जाती है।

  3. यह माइक्रोसॉफ्ट नहीं है। माइक्रोसॉफ्ट ने विकास समुदाय के लिए क्या किया है, मैं व्यक्तिगत रूप से प्यार करता हूं। वे शानदार उपकरण और आसपास के सर्वोत्तम ढांचे और भाषाओं में से एक बनाते हैं। ऐसा कहा जा रहा है कि, कुछ लोगों को सिर्फ माइक्रोसॉफ्ट से नफरत है।

  4. लागत। माइक्रोसॉफ्ट टूल्स को मुफ्त या बहुत सस्ते (एक्सप्रेस संस्करण और बिज़ स्पार्क) के लिए कई अच्छे तरीके हैं। माइक्रोसॉफ्ट टूल्स के साथ काम करने के साथ अभी भी एक उच्च लागत जुड़ी है। मेरा मानना ​​है कि ज्यादातर लागतों में यह लागत उत्पादकता लाभ के लायक है, लेकिन सभी सहमत नहीं हैं।

उपरोक्त के अतिरिक्त, वहां अभी भी कहानी है कि आप सूत्रण मॉडल की वजह से आईआईएस पर लंबे समय तक मतदान अनुरोध स्केल नहीं कर सकते हैं चारों ओर जा रहा है। इसमें कुछ सच्चाई है, लेकिन good code design के साथ, और कुछ सर्वर tweaks, आप ज्यादातर इन समस्याओं के आसपास हो सकता है।

+6

मैंने हंसेलमैन की ब्लॉग प्रविष्टि को पढ़ा है http://www.hanselman.com/blog/AsynchronousScalableWebApplicationsWithRealtimePersistentLongrunningConnectionsWithSignalR.aspx कि एक ASP.NET/SignalR चैट एप्लिकेशन दस या हजारों क्लाइंट की सेवा कर सकता है, जो वाकई अद्भुत है। मैंने यह देखने के लिए गहराई से खुदाई नहीं की कि वे ऐसा कैसे करते हैं, लेकिन यह कैसे है "स्केलेबल" नोडजेस कर सकते हैं ... – Vimvq1987

+2

आपका क्या मतलब है "stack_flatens"? –

+7

यदि आप एएसपी.नेट एमवीसी जैसे कुछ का उपयोग कर रहे हैं तो आपको जावास्क्रिप्ट, एचटीएमएल, सीएसएस, सी #, और विजुअल स्टूडियो को जानना होगा। सर्वर पक्ष पर जावास्क्रिप्ट के साथ आप इसे जावास्क्रिप्ट, एचटीएमएल, सीएसएस में कम कर सकते हैं। सामान्य रूप से –

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