माइक्रोसर्विसेज का उपयोग करने के लिए आम तर्कों में से एक बेहतर स्केलेबिलिटी है। लेकिन मुझे आश्चर्य है कि क्या यह तर्क वास्तव में मान्य है।
हम कहते हैं कि हमारे पास 10 माइक्रोसेरवे से युक्त एक आवेदन था, जिसमें से 9 में प्रत्येक दो इंस्टेंसेस (अतिरेक के लिए) थे और उनमें से एक में 4 इंस्टेंस के साथ लोड (स्केलेबिलिटी) को संभालने के लिए था। प्रो-माइक्रोसर्विस तर्क तब है कि आप अन्य सेवाओं से इस miroservice को अप्रत्यक्ष रूप से स्केल करने में सक्षम हैं।
हालाँकि, यह कहते हैं कि सभी 10 microservices एक एकल अखंड में मॉड्यूल थे और इस मोनोलिथ के उदाहरणों में से कई (जैसे ऊपर से योग की तरह 22) तैनात किए गए थे। सिस्टम को एक महत्वपूर्ण हिस्से के लिए लोड को संभालने में सक्षम होना चाहिए, क्योंकि ऐसा करने के लिए पर्याप्त उदाहरण हैं। यदि उदाहरणों में प्रोग्राम लॉजिक की आवश्यकता नहीं है, तो केवल नकारात्मक पक्ष यह होगा कि बाइनरी और आवश्यक रैम की मात्रा थोड़ी बड़ी होगी। लेकिन फिर, अंतर ज्यादातर मामलों में बहुत बड़ा नहीं होना चाहिए - कम से कम बाकी स्टैक (स्प्रिंग बूट के बारे में सोचो) की तुलना में नहीं। एक स्केलेड मोनलिथ का उल्टा एक वितरित प्रणाली के पतन के बिना (अधिकांश) सरल प्रणाली होगी।
क्या मैं कुछ भूल रहा हूँ?