Ubuntu 16.04 पर Node.js लगातार अनुप्रयोगों की स्थापना कैसे करें

Node.js अनुप्रयोग पैमाने पर उनकी क्षमता के लिए लोकप्रिय हैं। कई सर्वरों पर कई समवर्ती प्रक्रियाओं को चलाने से कम विलंबता और अधिक अपटाइम प्राप्त होता है। कई सर्वरों का प्रबंधन करते समय, Node.js अनुप्रयोगों को स्वचालित रूप से पुनरारंभ करना आसान होता है यदि वे दुर्घटनाग्रस्त हो जाते हैं। यह ट्यूटोरियल आपको दिखाएगा कि रिक्त उबंटू 16.04 उदाहरण से एप्लिकेशन दृढ़ता कैसे सेट करें।

आवश्यक शर्तें

  • उबंटू 16.04 LTS x64 के साथ किसी भी आकार का वल्चर उदाहरण बनाएं।
  • यदि आप रूट यूजर नहीं हैं, तो sudo -sअपने पासवर्ड में रन करें और टाइप करें। स्टार्टअप फ़ाइल को संशोधित करने के लिए रूट एक्सेस की आवश्यकता होती है ताकि प्रक्रिया प्रबंधक बूट पर शुरू हो।
  • सुनिश्चित करें कि Node.js को इंस्टाल किया गया है, और Node.js का संस्करण 8.9.3 LTS या बाद का संस्करण है, जिसे दृढ़ता प्रबंधक के सुचारू रूप से चलाने के लिए आवश्यक है। node -vइंस्टॉल किए गए संस्करण की जांच करने के लिए उपयोग करें । यदि Node.js सही संस्करण पर नहीं है, तो निम्न कमांड इसे स्थापित करेंगे।

Node.js. स्थापित करें

$ sudo apt-get update
$ curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
$ sudo apt-get install -y nodejs

स्वैप विभाजन बनाएँ

यह चरण वैकल्पिक है, लेकिन स्थापना के लिए अनुशंसित है। स्वैप विभाजन हार्ड डिस्क के भाग होते हैं जो रैम को पूरक करने में मदद करने के लिए समर्पित होते हैं। छोटे Vultr उदाहरणों पर, जैसे 512MB RAM उदाहरण, स्वैप विभाजन बनाना प्रदर्शन के लिए फायदेमंद होगा। स्वैप ट्यूटोरियल के स्वचालित संस्करण के लिए, नीचे दिए गए कमांड का उपयोग करें।

$ git clone https://github.com/teamtofu/server-tools.git tools
$ bash ./tools/swap.sh

आमतौर पर, लगातार अनुप्रयोगों को स्थापित करते समय 4 जीबी रैम या अधिक के साथ उदाहरणों के लिए स्वैप का उपयोग करना आवश्यक नहीं होगा, हालांकि यह अनुप्रयोगों के प्रदर्शन में सुधार कर सकता है। रैम स्वैप की तुलना में अधिक प्रतिक्रियाशील है, इसलिए अधिक रैम वाले उदाहरण स्वैप की परवाह किए बिना बेहतर परिणाम देंगे।

यार्न स्थापित करें

यार्न Node.js पैकेज के लिए फेसबुक से पैकेज मैनेजर का उपयोग करना आसान है। यह एनपीएम से तेज है और नियतात्मक भी है, जो कई सर्वरों को तैनात करते समय विशेष रूप से उपयोगी है।

$ curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
$ echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
$ sudo apt-get update && sudo apt-get install yarn

हालांकि, यार्न के बजाय एनपीएम का उपयोग किया जा सकता है, और इस ट्यूटोरियल में उन सभी के लिए तुलनीय आदेश हैं।

अपना Node.js एप्लिकेशन इंस्टॉल करें

यदि आपके एप्लिकेशन को गिट रिपॉजिटरी में होस्ट किया गया है, तो इसे क्लोन करें और उपयोग करें yarn install। आपके आवेदन में एक सर्वर प्रविष्टि फ़ाइल होनी चाहिए, आमतौर पर server.jsया index.js, जिसका उपयोग अगले चरणों में किया जाएगा।

प्रक्रिया प्रबंधक 2 स्थापित करें

प्रोसेस मैनेजर 2 वह पैकेज है जो एप्लिकेशन को ऑटो रिस्टार्ट करेगा। प्रक्रिया प्रबंधक 2 बहुत लोकप्रिय है, और इसका उपयोग Microsoft, पेपाल और इंटुइट द्वारा किया जाता है, इसलिए यह सुरक्षित और विश्वसनीय है।

$ yarn global add pm2

एक प्रक्रिया के रूप में अपना आवेदन जोड़ें

एप्लिकेशन को डीमॉनेटाइज (बैकग्राउंड में रन) और स्टार्ट कमांड के साथ ऑटो रीस्टार्ट किया जाएगा।

$ pm2 start [path to your entry.js] -i max

यदि आप अधिकतम प्रक्रियाओं को स्वचालित रूप से लॉन्च करना चाहते हैं, तो -i maxतर्क पास करें । यदि इस Vultr उदाहरण का एकमात्र उपयोग अनुप्रयोग की सेवा के लिए है, तो यह अनुशंसित है। एक से अधिक सीपीयू के साथ वल्चर के उदाहरणों के लिए, कई प्रक्रियाओं को लॉन्च किया जाएगा, और प्रक्रिया प्रबंधक 2 इन सभी व्यक्तिगत प्रक्रियाओं के लिए लोड बैलेंसर के रूप में कार्य करेगा।

स्वचालित रूप से बूट पर अपना आवेदन शुरू करें

एप्लिकेशन शुरू करने के बाद, एप्लिकेशन के कॉन्फ़िगरेशन को सहेजें। फिर, उबंटू बूट करने पर बैकग्राउंड में प्रोसेस मैनेजर 2 को स्वचालित रूप से चलाने के लिए स्टार्टअप कमांड चलाएं। उबंटू 16.04 के लिए, प्रोसेस मैनेजर 2 के लिए बाध्य होगा systemd

$ pm2 save
$ pm2 startup

अब यदि आपका Node.js एप्लिकेशन किसी त्रुटि के कारण क्रैश हो जाता है, तो यह पुनः आरंभ हो जाएगा, और यदि उबंटू किसी कारण से क्रैश हो जाता है, तो प्रक्रिया स्वचालित रूप से उबंटू से पुनः आरंभ हो जाएगी। प्रक्रियाओं को फिर से शुरू किया जा सकता है pm2 gracefulReload allऔर प्रक्रिया प्रबंधक 2 के साथ फिर से शुरू किया जा सकता है pm2 update। प्रक्रिया प्रबंधक 2 को बूट पर शुरू करने से रोकने के लिए, चलाएँ pm2 unstartup

परिक्षण

rebootयह देखने के लिए टाइप करके देखें कि क्या आपके एप्लिकेशन को उबंटू बूट्स के बाद परोसा गया है। यदि एप्लिकेशन वेब के लिए है और पोर्ट पर काम करता है 80, तो curl http://localhost/शुरुआती पृष्ठ के लिए HTML दिखाएगा। इस मामले में कि यह काम नहीं करता है, कमांड pm2 statusचल रही प्रक्रियाओं को दिखाएगा, और स्टार्ट कमांड को फिर से जारी किया जा सकता है।

आवेदन के नए संस्करणों की तैनाती

यदि एप्लिकेशन को अपडेट किया जाता है, जैसे कि गिट रिपॉजिटरी को खींचकर, तो रनिंग एप्लिकेशन प्रक्रियाओं को अपडेट करने के लिए एक कमांड जारी किया जाना चाहिए।

$ pm2 update

उदाहरण उपयोग

सेवा के रूप में एक लोकप्रिय ओपन-सोर्स प्लेटफॉर्म, पार्स सर्वर , एक एप्लिकेशन के लिए बैकएंड के रूप में कार्य करता है। कोड या अनुरोधों की मात्रा में त्रुटियों के कारण बैकएंड क्रैश हो सकता है, लेकिन एप्लिकेशन को कोई डाउनटाइम अनुभव नहीं होगा क्योंकि अन्य सर्वर (और / या प्रक्रियाएं) चलते रहते हैं, और पार्स सर्वर प्रक्रिया जल्दी से पुनरारंभ हो जाती है।



Leave a Comment

Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें

Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें

LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है

डेबियन पर सेटअप NFS शेयर

डेबियन पर सेटअप NFS शेयर

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

मोटोमो एनालिटिक्स को फेडोरा 28 पर कैसे स्थापित करें

मोटोमो एनालिटिक्स को फेडोरा 28 पर कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है

Linux पर एक TeamTalk Server सेटअप करें

Linux पर एक TeamTalk Server सेटअप करें

टीमटॉक एक कॉन्फ्रेंसिंग प्रणाली है जो उपयोगकर्ताओं को उच्च-गुणवत्ता वाले ऑडियो / वीडियो वार्तालाप, टेक्स्ट चैट, स्थानांतरण फ़ाइलें और स्क्रीन साझा करने की अनुमति देती है। यह मैं

विंडोज सर्वर पर Garrys मॉड कैसे स्थापित करें

विंडोज सर्वर पर Garrys मॉड कैसे स्थापित करें

परिचय यह आलेख बताएगा कि विंडोज सर्वर 2012 पर गारस मोड सर्वर को कैसे डाउनलोड और इंस्टॉल किया जाए। यह गाइड गहराई में होने के लिए बनाया गया है।

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed ​​का उपयोग करता है। क्या थी?

CentOS पर FFmpeg कैसे स्थापित करें

CentOS पर FFmpeg कैसे स्थापित करें

FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा

अपने Vultr VPS को कैसे एक्सेस करें

अपने Vultr VPS को कैसे एक्सेस करें

Vultr अपने VPS को कॉन्फ़िगर करने, स्थापित करने और उपयोग करने के लिए कई अलग-अलग तरीके प्रदान करता है। क्रेडेंशियल एक्सेस करें आपके VPS के लिए डिफ़ॉल्ट एक्सेस क्रेडेंशियल ar

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ