MEAN बनाम दीपक ढेर पेशेवरों और विपक्ष
वेब ढेर दशकों से प्रौद्योगिकी और बैकएंड भाषाओं में प्रगति के साथ विकसित हुआ है। वर्तमान में सबसे लोकप्रिय वेब स्टैक में से दो LAMP और MEAN हैं। वे बैकएंड भाषाओं, डेटाबेस और सर्वर वातावरण के लिए दो अलग-अलग तकनीकों पर भरोसा करते हैं। "स्टैक" शब्द का तात्पर्य है वेब सर्वर वातावरण बनाने के लिए तकनीकें जो एक दूसरे के ऊपर खड़ी होती हैं.
इस लेख में, मैं इन दो वेब स्टैक को स्पष्ट करना चाहूंगा, जो कि उनके प्रौद्योगिकी विकल्पों, दोनों पेशेवरों और विपक्षों को देखकर। प्रत्येक स्टैक एक्सेल कहां है? और किस प्रकार की परियोजनाओं से या तो विकल्प से सबसे अधिक लाभ होगा? यदि आप वेब तकनीकों के लिए नए हैं या केवल इन दो स्टैक के बारे में सीखना चाहते हैं, तो इस गाइड में वह सब कुछ है जिसकी आपको आवश्यकता होगी.
पारंपरिक LAMP विकास
अधिकांश डेवलपर्स को पारंपरिक LAMP स्टैक के बारे में पता होना चाहिए क्योंकि यह शुरुआती वेब के बाद से आसपास है. दीपक के लिए खड़ा है लिनक्स, अपाचे, MySQL तथा पीएचपी. इनमें से प्रत्येक व्यक्तिगत सॉफ़्टवेयर पैक हैं जो एक बहुमुखी सर्वर समाधान बनाने के लिए संयुक्त हैं.
LAMP से चिपके रहने का सबसे बड़ा कारण है सुरक्षा और व्यापक समर्थन. यह लगभग दशकों से है, और यह वेबसाइटों की मेजबानी करने का एक सिद्ध तरीका है.
PHP और MySQL जैसे सभी बैकएंड टेक अच्छी तरह से ज्ञात हैं, और प्रत्येक प्रमुख होस्टिंग प्रदाता द्वारा समर्थित है. यदि आप एक LAMP स्टैक पर काम करते हैं तो आप मूल रूप से कहीं भी होस्ट कर सकते हैं। इसके अतिरिक्त, आप प्राप्त करते हैं सबसे लोकप्रिय सीएमएस इंजन तक पहुंच. WordPress, Drupal और Joomla सभी PHP / MySQL पर चलते हैं.
वहां अनुकूलन विकल्प एलईएमपी वास्तुकला के भीतर जैसे एलईएमपी अपाचे को नगीनेक्स के साथ बदल रहा है। आप WAMP स्टैक के रूप में Windows सर्वर पर एक संस्करण भी चला सकते हैं.
हालांकि सभी मुख्य सॉफ्टवेयर - अपाचे, MySQL और PHP सहित - खुले खट्टे थे, और मुख्य रूप से लिनक्स के लिए बनाया गया। यही कारण है कि लिनक्स एक सर्वर वातावरण के लिए सबसे अधिक समझ में आता है, और यही कारण है कि LAMP ने आधुनिक वेब विकास के लिए समय की कसौटी पर खड़ा किया है.
अधिकांश डेवलपर्स इस मार्ग पर जाते हैं क्योंकि यह है ऑनलाइन वेबसाइट प्राप्त करने का सबसे सरल तरीका. आपको उन मंचों पर बहुत सारे समर्थन मिलेंगे जो एक LAMP वातावरण को कॉन्फ़िगर करने और उसके निवारण के लिए आवश्यक सभी चीजों को कवर करते हैं। उदाहरण के लिए, आप अधिक जानकारी के लिए इस सर्वरफ़ॉल्ट प्रश्न की जाँच कर सकते हैं.
MEAN के साथ जावास्क्रिप्ट बैकएंड
Node.js जावास्क्रिप्ट के साथ निर्मित स्केलेबल अनुप्रयोगों को चलाने के लिए निर्धारित डेवलपर्स के लिए सबसे नई तकनीक है। नोड MEAN स्टैक की शक्तियां, और एक प्राथमिक लाभ प्रदान करता है: सब कुछ एक ही भाषा पर चलता है.
मतलब के लिए खड़ा है MongoDB, Express.js, Angular.js, और निश्चित रूप से Node.js. यह संक्षिप्त नाम सर्वर ऑपरेटिंग सिस्टम या सर्वर सॉफ्टवेयर के लिए कोई आवश्यकता नहीं रखता है। एक MEAN स्टैक किसी भी OS पर चला सकते हैं, और नोड भी बैकेंड पर जेएस को संभालने के लिए अपने स्वयं के सर्वर के साथ आता है.
मीनिंग वेबसाइट पर आपको बहुत सारे प्रलेखन और समर्थन मिलेंगे.
हालांकि इस स्टैक ने बहुत ध्यान आकर्षित किया है, यह अभी भी एक पारंपरिक LAMP स्टैक के रूप में स्थिर समर्थन की मात्रा के पास नहीं है.
तो कोई MEAN के साथ क्यों जाएगा? क्योंकि यह है अंततः तेज तथा पैमाने पर करना आसान है. MongoDB एक है NoSQL डेटाबेस जो प्रश्नों का अनुकूलन करता है। फुलस्टैक जावास्क्रिप्ट के उपयोग से भी विकास में सुधार होता है क्योंकि एक भाषा सभी फ्रंटएंड और बैकेंड कार्य के लिए लागू होती है.
प्लस कई अन्य जेएस चौखटे बाजार को स्थिर समाधान के रूप में मार रहे हैं। उदाहरण के लिए, MEAN को a पर स्विच किया जा सकता है मुझे ढेर एम्बर के साथ कोणीय की जगह.
प्रोग्रामर MEAN स्टैक को प्यार करेंगे क्योंकि यह रखरखाव और विकास के लिए कोड अलग करता है. यह बनाता है अपने जावास्क्रिप्ट वेब ऐप्स को व्यवस्थित करना आसान है ताकि वे प्राकृतिक वातावरण में चलें.
इस विषय पर सीखने के लिए बहुत कुछ है, और यह संभवतः नए डेवलपर्स के लिए प्रवेश के लिए सबसे बड़ी बाधा है। MEAN ऐप को प्रबंधित करने के लिए आवश्यक सभी तकनीकों को सीखना महीनों लग सकते हैं। लेकिन अगर आप नोड को प्यार करते हैं, और जावास्क्रिप्ट पर सब कुछ चलाना चाहते हैं तो यह अच्छी तरह से प्रयास के लायक है.
आपको आरंभ करने के लिए यहां कुछ शुरुआती ट्यूटोरियल दिए गए हैं.
- Node.js के लिए एक निरपेक्ष शुरुआतकर्ता गाइड
- फेलिक्स की नोड्स शुरुआती गाइड
- Express.js का परिचय
- MEAN के साथ आधुनिक वेब एप्लिकेशन बनाना सीखें
- Node.js, Express और MongoDB के साथ शुरुआत करना
PHP बनाम नोड
90 के दशक के मध्य से PHP लगभग रहा है, और वास्तव में सबसे लोकप्रिय बैकएंड भाषा है। कई वेब डेवलपर्स PHP (या अंततः सीखते हैं) के साथ शुरू होते हैं क्योंकि यह वेब प्लेटफार्मों और होस्टिंग प्रदाताओं में बहुत प्रमुख है.
नोड एक नया ढांचा है लेकिन इसकी लोकप्रियता असाधारण तेजी से बढ़ी है। इसमें वेब डेवलपर्स के लिए एक पैकेज मैनेजर के रूप में एनपीएम की लोकप्रियता शामिल है, और आगे कोणीय 2 जैसे शक्तिशाली फ्रंटेंड फ्रेमवर्क में विस्तारित करता है।.
नोड का अन्य लाभ यह है कि यह अपने स्वयं के वेब सर्वर के साथ आता है. जावास्क्रिप्ट एक MEAN स्टैक पर सब कुछ की जड़ में है, इसलिए यदि आप JS से प्यार करते हैं तो आप वास्तव में MEAN वेब ऐप्स बनाना पसंद करेंगे.
कई डेवलपर्स को लगता है कि PHP एक खराब डिज़ाइन वाली भाषा है क्योंकि निर्माता है, रासमस लेरडोर्फ ने वास्तव में इसे एक भाषा के रूप में डिजाइन नहीं किया था. PHP की शुरुआत हुई वेबसाइटों के लिए सामान्य समाधान, और जल्दी से असंबंधित कार्यों के एक बड़े पुस्तकालय में विकसित हुआ.
लेकिन PHP 7 के साथ भाषा की कई त्रुटियों को ठीक करने का प्रयास किया गया है, और मुफ्त में OOP फ्रेमवर्क, जैसे कि लारवेल, पीएचपी अब पहले से कहीं बेहतर भाषा है.
तो भाषा की बहस नीचे आती है आपकी व्यक्तिगत पसंद. क्या आपको वास्तव में जावास्क्रिप्ट लिखना पसंद है? फिर एक एमईएन स्टैक के साथ नोड विचार करने लायक हो सकता है.
यदि आप पहले से ही PHP जानते हैं, और जो आप जानते हैं, उसके साथ रहना चाहते हैं, तो LAMP एक व्यवहार्य मार्ग भी है.
कुल मिलाकर पेशेवरों और विपक्ष:
वहां कई परतें ऑपरेटिंग सिस्टम, सर्वर सॉफ्टवेयर, डेटाबेस और बैकएंड भाषा सहित तुलना करने के लिए प्रत्येक वेब स्टैक.
(1) MEAN स्टैक भी में कोणीय शामिल है जो एक सीमावर्ती ढांचा है। LAMP स्टैक में कोई आवश्यक ढांचा नहीं है, लेकिन आप हमेशा अपने द्वारा बनाए गए किसी भी ऐप में अपना खुद का ऐड कर सकते हैं.
(2) OS के संबंध में, LAMP स्टैक लिनक्स के व्युत्पन्न के लिए दिखता है. लिनक्स आमतौर पर सबसे अच्छा विकल्प है स्टैक की परवाह किए बिना एक सर्वर वातावरण के लिए, और यह MEAN के रूप में अच्छी तरह से सच है.
(3) अब सर्वर का OS सिर्फ कंप्यूटर सॉफ्टवेयर है, लेकिन यह नहीं है वेब सर्वर सॉफ्टवेयर. इसे पाने के लिए आपको Apache या nginx जैसे प्रोग्राम की आवश्यकता होती है। एलएएमपी अपाचे का उपयोग करता है क्योंकि यह उपलब्ध सबसे स्थिर विकल्पों में से एक है.
(4) MEAN Node.js सर्वर का उपयोग करता है जो है नोड पैकेज का हिस्सा. यह अभी भी काफी नया है, और जब वहाँ बहुत अधिक समर्थन है, तो नोड अबाचे के समान आकार के समुदाय के पास कहीं नहीं है.
(5) इसके अलावा एक नोड सर्वर की आवश्यकता है जावास्क्रिप्ट का एक बैकेंड (बिना एक्सटेंशन के)। अमरीका की एक मूल जनजाति अधिकांश बैकएंड भाषाओं की अनुमति देता है, और अधिक समर्थन के लिए कई मुफ्त एक्सटेंशन हैं। लेकिन फिलहाल अपाचे के पास नोड सपोर्ट के लिए कुछ भी नहीं है.
(6) डेटाबेस प्रबंधन तुम कहाँ मिलोगे सबसे बड़ा अंतर. LAMP रिलेशनल डेटा स्टोरेज के लिए MySQL का उपयोग करता है, जबकि MEAN MongoDB का उपयोग करता है जो एक गैर-रिलेशनल डेटाबेस है। गैर-संबंधपरक डीबी हैं काफी तेज, और उच्च यातायात के साथ स्केलिंग का एक आसान तरीका प्रदान करते हैं.
(7) ध्यान रखें कि PHP केवल MySQL तक सीमित नहीं है. यह MongoDB और PostgreSQL या SQLite जैसे अन्य विकल्पों का उपयोग कर सकता है। यह सिर्फ इतना है कि ज्यादातर PHP डेवलपर्स MySQL को जानते हैं, इसलिए यह एक विशिष्ट LAMP स्टैक के लिए मुख्य दावेदार है.
(8) आम तौर पर ढेर और तेज़ दौड़ें तथा बड़े पैमाने पर, लेकिन सिस्टम को सीखने के लिए बहुत अधिक समय और सर्वर ज्ञान की आवश्यकता होती है। LAMP के ढेर हैं कोशिस किया है और सत्य है, और वे आते हैं अलग सोच सबसे सुरक्षित बुनियादी ढांचे और व्यापक समर्थन कल्पना के साथ.
(9) प्रोग्रामिंग भाषाओं में दो स्टैक के बीच एक बड़ा अंतर है। LAMP मुख्य रूप से PHP पर काम करता है जिसमें वर्डप्रेस और लारवेल फ्रेमवर्क शामिल हैं। MEAN फ्रंटएंड पर AngularJS के साथ बैकएंड के लिए ExpressJS / NodeJS पर काम करता है.
(10) MEAN है पूर्ण स्टैक जावास्क्रिप्ट, और बहुत कुछ है जो आपको उस दौड़ने के लिए सीखने की आवश्यकता होगी। यह है नए स्टार्टअप्स की लगातार पसंद वेब अनुप्रयोग विकास में सीमाओं को धक्का देने के लिए तैयार है। LAMP के साथ अधिक पारंपरिक है फ्रंट में जेएस, बैकएंड पर पीएचपी. यह उन लोगों के लिए बनाया गया है जो सिर्फ चाहते हैं बहुत अधिक चिंताओं के बिना वेबसाइट ऑनलाइन प्राप्त करें.
कृपया थोड़ा और जानने के लिए इस तुलना गाइड की जाँच करें। न तो चुनाव सही है या गलत, बस अलग है और विभिन्न परियोजनाओं के लिए बनाया गया है.
समेट रहा हु
मैं कहता हूं कि अधिकांश वेबसाइटें LAMP स्टैक की ओर झुकती हैं क्योंकि इसकी जांच की जाती है, और Google में अनुक्रमणित Q & A थ्रेड्स बहुत सारे हैं। एमईएएन अभी भी बढ़ रहा है और इसके पास भरपूर समर्थन है, लेकिन ज्यादातर तकनीकी लोग इससे निपटना चाहते हैं जो अधिक तकनीकी हो सकते हैं.
बेझिझक दोनों को आज़माएं, और उन्हें अपने लिए देखें। यह संभव है स्थानीय रूप से दोनों सेटअप स्थापित करें अपने कंप्यूटर पर, और एक दूरस्थ सर्वर के बिना उन पर निर्माण करें.
और यदि आप या तो स्टैक के बारे में अधिक जानकारी की तलाश कर रहे हैं, तो मैंने नीचे दिए गए आसान लिंक का एक सेट एकत्र किया है.
- MEAN के साथ आधुनिक वेब एप्लिकेशन बनाना सीखें (Thinkster.io)
- डोकर लेम्प स्टैक एडमिन (Jessesnet.com)
- डेबियन 8 पर लिनक्स, अपाचे, MySQL, PHP (LAMP) स्टैक कैसे स्थापित करें (Digitalocean.com)