माइक्रोसर्विसेज(Microservices)

यह क्या है

माइक्रोसर्विसेज अनुप्रयोग विकास के लिए एक आधुनिक दृष्टिकोण है जो क्लाउड नेटिव प्रौद्योगिकियों का लाभ उठाता है। जबकि आधुनिक एप्लिकेशन, जैसे नेटफ्लिक्स, एक ही ऐप प्रतीत होते हैं, वे वास्तव में छोटी सेवाओं का एक संग्रह हैं - सभी एक साथ मिलकर काम कर रहे हैं। उदाहरण के लिए, एक एकल पृष्ठ जो आपको वीडियो तक पहुंचने, खोजने और पूर्वावलोकन करने की अनुमति देता है, संभवतः छोटी सेवाओं द्वारा संचालित होता है जो प्रत्येक इसके एक पहलू को संभालती हैं (जैसे खोज, प्रमाणीकरण और आपके ब्राउज़र में पूर्वावलोकन चलाना)। संक्षेप में, माइक्रोसर्विसेज एक एप्लिकेशन आर्किटेक्चर पैटर्न को संदर्भित करता है जो आमतौर पर अखंड अनुप्रयोगों के विपरीत होता है ।

समस्या

माइक्रोसर्विसेज अखंड अनुप्रयोगों द्वारा उत्पन्न चुनौतियों का जवाब है। आम तौर पर, किसी एप्लिकेशन के विभिन्न हिस्सों को अलग-अलग स्केल करने की आवश्यकता होगी । एक ऑनलाइन स्टोर, उदाहरण के लिए, चेकआउट की तुलना में अधिक उत्पाद दृश्य होने जा रहे हैं। इसका मतलब है कि आपको चेकआउट की तुलना में चल रही उत्पाद दृश्य कार्यक्षमता की अधिक प्रतियों की आवश्यकता होगी। एक अखंड अनुप्रयोग में, तर्क के उन अंशों को अलग से तैनात नहीं किया जा सकता है। यदि आप उत्पाद की कार्यक्षमता को अलग-अलग माप नहीं सकते हैं, तो आपको पूरे ऐप को अन्य सभी घटकों के साथ डुप्लिकेट करना होगा जिनकी आपको आवश्यकता नहीं है - संसाधनों का अक्षम उपयोग। अखंड अनुप्रयोग भी डेवलपर्स के लिए डिज़ाइन की कमियों के आगे झुकना आसान बनाते हैं। क्योंकि सभी कोड एक ही स्थान पर हैं, इसलिए उस कोड को कसकर युग्मित करना आसान होता है और चिंताओं को अलग करने के सिद्धांत को लागू करना कठिन है। मोनोलिथ्स की अक्सर आवश्यकता होती है कि डेवलपर्स उत्पादक होने से पहले पूरे कोडबेस को समझें ।

समाधान

अलग-अलग माइक्रोसर्विसेज में कार्यक्षमता को अलग करने से उन्हें स्वतंत्र रूप से तैनात करना, अपडेट करना और स्केल करना आसान हो जाता है। अलग-अलग टीमों को एक बड़े एप्लिकेशन के अपने स्वयं के छोटे हिस्से पर ध्यान केंद्रित करने की अनुमति देकर आप बाकी संगठन को नकारात्मक रूप से प्रभावित किए बिना उनके ऐप पर काम करना भी आसान बना देते हैं। जबकि माइक्रोसर्विसेज कई समस्याओं को हल करते हैं, वे ऑपरेशनल ओवरहेड भी बनाते हैं - जिन चीजों को आपको परिनियोजित करने और परिमाण या अधिक के क्रम में वृद्धि का ट्रैक रखने की आवश्यकता होती है। कई क्लाउड-नेटिव तकनीकों का उद्देश्य माइक्रोसर्विसेज को तैनात करना और प्रबंधित करना आसान बनाना है।


अंतिम बार संशोधित April 22, 2023: Add microservices.md (#1559) (905cf90)