यह दस्तावेज़ AI द्वारा अनुवादित है। सटीक जानकारी के लिए कृपया अंग्रेज़ी संस्करण देखें।
साझा मेमोरी मोड (shared-memory mode) के मल्टी-एप्लिकेशन परिनियोजन (deployment) और संचालन (operations) में स्पष्ट लाभ हैं, लेकिन जैसे-जैसे एप्लिकेशनों की संख्या और व्यावसायिक जटिलता बढ़ती है, एक एकल इंस्टेंस को धीरे-धीरे संसाधनों की प्रतिस्पर्धा और कम स्थिरता जैसी समस्याओं का सामना करना पड़ सकता है। ऐसी स्थितियों के लिए, उपयोगकर्ता अधिक जटिल व्यावसायिक आवश्यकताओं को पूरा करने के लिए बहु-पर्यावरण हाइब्रिड परिनियोजन (multi-environment hybrid deployment) समाधान अपना सकते हैं।
इस मोड के तहत, सिस्टम एक प्रवेश एप्लिकेशन (entry application) को एकीकृत प्रबंधन और शेड्यूलिंग केंद्र के रूप में तैनात करता है, और साथ ही वास्तविक व्यावसायिक एप्लिकेशनों को होस्ट करने के लिए स्वतंत्र एप्लिकेशन रनटाइम वातावरण के रूप में कई NocoBase इंस्टेंस तैनात करता है। प्रत्येक वातावरण एक-दूसरे से अलग होते हैं और मिलकर काम करते हैं, जिससे एकल इंस्टेंस के दबाव को प्रभावी ढंग से वितरित किया जाता है और सिस्टम की स्थिरता, स्केलेबिलिटी और फॉल्ट आइसोलेशन क्षमता में काफी सुधार होता है।
परिनियोजन स्तर पर, विभिन्न वातावरणों को स्वतंत्र प्रक्रियाओं (processes) में चलाया जा सकता है, अलग-अलग Docker कंटेनरों के रूप में तैनात किया जा सकता है, या कई Kubernetes Deployment के रूप में रखा जा सकता है, जो विभिन्न पैमानों और आर्किटेक्चर के बुनियादी ढांचे के वातावरण के लिए लचीले ढंग से अनुकूल हो सकते हैं।
बहु-पर्यावरण हाइब्रिड परिनियोजन मोड में:
वर्तमान में वातावरण निर्माण (environment creation) की सुविधा प्रदान नहीं की गई है, प्रत्येक वर्कर एप्लिकेशन को मैन्युअल रूप से तैनात किया जाना चाहिए और संबंधित वातावरण जानकारी के साथ कॉन्फ़िगर किया जाना चाहिए ताकि उन्हें प्रवेश एप्लिकेशन द्वारा पहचाना जा सके।
परिनियोजन से पहले कृपया निम्नलिखित सेवाएँ तैयार करें:
Redis
डेटाबेस (Database)
प्रवेश एप्लिकेशन एक एकीकृत प्रबंधन केंद्र के रूप में कार्य करता है, जो एप्लिकेशन निर्माण, शुरू करने, रोकने और वातावरण शेड्यूलिंग के साथ-साथ एप्लिकेशन एक्सेस प्रॉक्सी के लिए जिम्मेदार है।
प्रवेश एप्लिकेशन एनवायरनमेंट वेरिएबल कॉन्फ़िगरेशन विवरण:
वर्कर एप्लिकेशन वास्तविक व्यावसायिक रनटाइम वातावरण के रूप में कार्य करते हैं, जो विशिष्ट NocoBase एप्लिकेशन इंस्टेंस को होस्ट करने और चलाने के लिए जिम्मेदार होते हैं।
वर्कर एप्लिकेशन एनवायरनमेंट वेरिएबल कॉन्फ़िगरेशन विवरण:
निम्नलिखित उदाहरण Docker कंटेनरों को रनटाइम यूनिट के रूप में उपयोग करने वाले बहु-पर्यावरण हाइब्रिड परिनियोजन समाधान को दिखाता है, जहाँ Docker Compose के माध्यम से एक प्रवेश एप्लिकेशन और दो वर्कर एप्लिकेशन एक साथ तैनात किए जाते हैं।
एप्लिकेशन के बुनियादी प्रबंधन संचालन साझा मेमोरी मोड के समान ही हैं, कृपया साझा मेमोरी मोड देखें। यह अनुभाग मुख्य रूप से बहु-पर्यावरण कॉन्फ़िगरेशन से संबंधित सामग्री का परिचय देता है।
परिनियोजन पूरा होने के बाद, प्रवेश एप्लिकेशन के "एप्लिकेशन सुपरवाइजर" (App Supervisor) पेज पर जाएँ, जहाँ आप "वातावरण" (Environments) टैब में पंजीकृत वर्कर वातावरणों की सूची देख सकते हैं। इसमें वातावरण पहचानकर्ता, वर्कर एप्लिकेशन संस्करण, एक्सेस URL और स्थिति जैसी जानकारी शामिल है। वातावरण की उपलब्धता सुनिश्चित करने के लिए वर्कर एप्लिकेशन हर 2 मिनट में एक हार्टबीट (heartbeat) रिपोर्ट करते हैं।

एप्लिकेशन बनाते समय, आप एक या अधिक रनटाइम वातावरण चुन सकते हैं, जो यह निर्दिष्ट करता है कि एप्लिकेशन किन वर्कर एप्लिकेशनों में तैनात किया जाएगा। आमतौर पर, एक ही वातावरण चुनने की सलाह दी जाती है। केवल तभी कई वातावरण चुनें जब वर्कर एप्लिकेशन में सेवा विभाजन (service splitting) किया गया हो और लोड बैलेंसिंग या क्षमता आइसोलेशन प्राप्त करने के लिए एक ही एप्लिकेशन को कई रनटाइम वातावरणों में तैनात करने की आवश्यकता हो।

एप्लिकेशन सूची पेज प्रत्येक एप्लिकेशन के वर्तमान रनटाइम वातावरण और स्थिति की जानकारी प्रदर्शित करेगा। यदि कोई एप्लिकेशन कई वातावरणों में तैनात है, तो कई रनटाइम स्थितियाँ दिखाई देंगी। सामान्य परिस्थितियों में, विभिन्न वातावरणों में एक ही एप्लिकेशन एक समान स्थिति बनाए रखेगा और इसे एकीकृत तरीके से शुरू और बंद करने की आवश्यकता होती है।

चूंकि एप्लिकेशन शुरू होने पर डेटाबेस में इनिशियलाइजेशन डेटा लिख सकता है, इसलिए बहु-पर्यावरण स्थितियों में रेस कंडीशन (race conditions) से बचने के लिए, कई वातावरणों में तैनात एप्लिकेशनों को शुरू करते समय कतार (queue) में रखा जाएगा।

वर्कर एप्लिकेशनों को प्रवेश एप्लिकेशन के सब-पाथ /apps/:appName/admin के माध्यम से प्रॉक्सी एक्सेस किया जा सकता है।

यदि एप्लिकेशन कई वातावरणों में तैनात है, तो प्रॉक्सी एक्सेस के लिए एक लक्ष्य वातावरण निर्दिष्ट करना आवश्यक है।

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