बुरी खबरों के साथ शुरू करने के लिए: Node.js एक सुंदर युवा तकनीक है, मुझे लगता है कि आप पाएंगे कि एक पूर्ण वेबसाइट बनाने और इसे बनाए रखने/संचालित करने की प्रक्रियाएं जो आप वर्तमान में उपयोग की जा रही हैं उससे बहुत अलग होंगी सेवा मेरे।
Josh3736 जोड़ता है: एक बार जब आप पता लगाते हैं कि कैसे नोड.जेएस और इसके विभिन्न पैकेज (कनेक्ट, एक्सप्रेस) काम करते हैं, तो मैंने पाया कि आप बहुत जल्दी नई साइटें विकसित कर सकते हैं।
वर्तमान में नोड.जेएस में मौजूद किसी न किसी किनारे, जो इसके विकास की तेज गति के साथ संयुक्त होते हैं और इसमें शामिल सभी मॉड्यूल चीजों को जटिल बना सकते हैं, और चीजों को कम सरल, तेज और सरल बनाना चाहते हैं।
Node Package Manager, NPM, अच्छा उपकरण और चौखटे Node.js के नंगे हड्डियों कार्यक्षमता का विस्तार करने का एक बहुत कुछ है यह उपयुक्त एक वेबसर्वर बनाने के लिए कर रही है:
कि रास्ते से बाहर करने के बाद, यहाँ अच्छी खबर है।
सबसे विशेष रूप से Express Framework होगा जिसमें वेबसर्वर चलाने के लिए लगभग हर चीज शामिल है (कुकीज़, सत्र और पथ मार्ग सहित)। इसके अतिरिक्त एक्सप्रेस आंशिक समर्थन करता है, जो आपके हेडर और फ़ूटर का ख्याल रखता है।
एक्सप्रेस Sencha's Connect के शीर्ष पर बनाया गया है। कुकीज़ और सत्र वास्तव में कनेक्ट द्वारा संचालित हैं। एक्सप्रेस आपके रूटिंग को सरल बनाता है और विचार/आंशिक हैंडल करता है। इसलिए यदि आपको एक्सप्रेस के साथ आने वाली सभी घंटियाँ और सीटी की आवश्यकता नहीं है तो आप इसके बजाय कनेक्ट के लिए जा सकते हैं।
यदि आप इन आंशिक के लिए टेम्पलेट का उपयोग करना चाहते हैं, तो Jade Template Engine आपके लिए चीजों को गति दे सकता है। हालांकि Josh3736 बताता है कि जेड धीमा और सफेद जगह-महत्वपूर्ण है। एक और पूर्ण अवलोकन here पाया जा सकता है, जिसमें उसका पसंदीदा, doT शामिल है। (मैं व्यक्तिगत रूप से socket.io
आधारित अनुप्रयोगों के लिए Node.js का उपयोग करता हूं, इसलिए जब यह templating की बात आती है तो वह मुझसे बेहतर स्रोत है)।
आप db-mysql मॉड्यूल का उपयोग कर Node.js से MySQL से कनेक्ट कर सकते हैं, लेकिन अगर आपको लगता है कि जरूरत नहीं है क्योंकि आप एक पहले से ही मौजूद प्रणाली से जुड़े डेटा तक पहुँच रहे हैं, मैं एक और अधिक उपयोग करने के लिए सलाह देंगे। .. 'आधुनिक' दृष्टिकोण, जो NoSQL डेटाबेस का उपयोग करना है क्योंकि अधिकांश नोड.जेएस परियोजनाएं ऐसा प्रतीत होती हैं। MongoDBMongoose के माध्यम से जाने का लोकप्रिय तरीका है।
या यदि यह केवल उन ऑब्जेक्ट्स को संग्रहीत कर रहा है, जिनमें आप रुचि रखते हैं, तो बस Redis के लिए जाएं (जिसे आपको शायद किसी भी बिंदु पर आवश्यकता होगी)।
आपकी वेबसाइट पूरी होने के बाद, आपको इसे तैनात करना होगा और यह सुनिश्चित करना होगा कि यह चल रहा है। ऐसा करने के कई तरीके हैं, जैसे अंतर्निर्मित क्लस्टर समर्थन का उपयोग करना या अधिक सुविधा-अनुकूल forever
एनपीएम मॉड्यूल का उपयोग करना। See this SO question of mine for more information.
निष्कर्ष:
यह क्या मैं कम से प्राप्त करने के लिए कोशिश कर रहा हूँ है:
पूछ क्या Node.js में एक वेबसाइट के निर्माण के लिए सबसे अच्छा अभ्यास है, के बारे में पूछ रूप में ही है क्या PHP में वेबसाइट बनाने का सबसे अच्छा तरीका यह है: 100 डेवलपर आपको 100 अलग-अलग उत्तर देंगे।
एनपीएम को विभिन्न प्रकार के उत्कृष्ट ढांचे के साथ आशीर्वाद दिया जाता है जो बहुत सारे कार्यों को सरल बनाते हैं, लेकिन यह सब वरीयता पर आधारित है जो वास्तव में जाने का तरीका है।
जैसा कि मैंने कहा है, नोड.जेएस अभी भी एक सुंदर युवा तकनीक है, इसलिए फ्रेमवर्क या अतिरिक्त उपकरण अभी तक 'डिफैक्टो मानक' के रूप में उभरे हैं; अधिकांश चीजों के लिए जो आप करने की कोशिश कर रहे हैं, वहां शायद कई विकल्प हैं, और अपडेट के दौरान उनमें से अधिकतर का उपयोग करते समय आपके कोड को तोड़ने की उम्मीद है, क्योंकि नोड.जेएस के विकास और अधिकांश मॉड्यूल तेजी से विकसित होते हैं। आपको रखना होगा।
सभी को एक साथ लाना:
मैंने कहा गया है के रूप में, Node.js के लिए अपने मुख्य उत्पादन उपयोग socket.io
उपयोग करने के लिए सक्षम होने के लिए, तो मैं किसी भी अच्छे उत्पादन वर्तमान उदाहरण नहीं है (और क्योंकि मैं एक अच्छी तरह से छुट्टी छुट्टी पर जाने वाला हूं, मेरे पास एक साथ रखने का समय नहीं है)।कुछ अच्छे उदाहरण हालांकि रहे हैं:
फिर, रास्ता तय (और बाद में उदाहरण का अनुसरण करने के लिए) के लिए बहुत आपका एकमात्र लक्ष्य और पर निर्भर करता है तकनीकें चुनी गईं, लेकिन सौभाग्य से उपलब्ध सभी विकल्पों के लिए बहुत सारे संसाधन उपलब्ध हैं। अधिकांश मॉड्यूल अच्छी तरह से प्रलेखित गिटहब भंडारों का उपयोग करते हैं और सबसे लोकप्रिय मॉड्यूल के साथ संयोजन में उदाहरण शामिल करते हैं (/examples/
डीआईआर देखें जो अधिकांश भंडारों में मौजूद प्रतीत होता है)।
शुभकामनाएं! (और Josh3736 को मेरी त्रुटियों को सुधारने के लिए धन्यवाद।)
मैं यह भी इंगित करना चाहूंगा कि उदाहरण के लिए mocha -> https://github.com/visionmedia/mocha का उपयोग करके अपने कोड का परीक्षण करना बहुत महत्वपूर्ण है। छोटे अच्छी तरह से परीक्षण मॉड्यूलर कोड (मॉड्यूल) बनाएँ। – Alfred
आप एर्लांग पर भी एक नज़र डालें जो डिफ़ॉल्ट रूप से समवर्तीता का समर्थन करता है, node.js से तेज़ है और सी या जावा कहने से आसान है। –