लगता है कि जावा अंतरिक्ष अनुप्रयोगों में एक जावा फ़ाइल (या ईयर फ़ाइल) के रूप में जावा सर्वलेट कंटेनर (या एप्लिकेशन सर्वर) में जावा वेब एप्लिकेशन को तैनात करने से दूर जाने के लिए और इसके बजाय एक निष्पादन योग्य जार के रूप में एप्लिकेशन को पैकेज करना प्रतीत होता है। जेट्टी की तरह एक एम्बेडेड सर्वलेट / HTTP सर्वर। और मेरा मतलब है कि इस तरह से नए फ्रेमवर्क प्रभावित कर रहे हैं कि नए अनुप्रयोगों को कैसे विकसित किया जाता है और तैनात किया जाता है न कि कैसे अनुप्रयोगों को अंतिम उपयोगकर्ताओं तक पहुंचाया जाता है (क्योंकि, उदाहरण के लिए, मुझे लगता है कि जेनकिन्स एक एम्बेडेड कंटेनर का उपयोग क्यों करता है, हड़पने के लिए बहुत आसान है और जाना )। एक्जीक्यूटेबल जार विकल्प को अपनाने वाले चौखटे के उदाहरण: ड्रॉपवॉकर , स्प्रिंग बूट और प्ले (अच्छी तरह से यह एक सर्वलेट कंटेनर पर नहीं चलता है लेकिन HTTP सर्वर एम्बेडेड है)।
मेरा सवाल यह है कि एक ऐसे वातावरण से आ रहा है, जहाँ हमने अपने (इस बिंदु तक अधिकतर स्ट्रट्स 2) अनुप्रयोगों को एक ही टॉमकैट एप्लिकेशन सर्वर में तैनात किया है, यदि हम एक एम्बेडेड कंटेनर दृष्टिकोण का उपयोग करने की योजना बनाते हैं, तो क्या बदलाव, सर्वोत्तम अभ्यास या विचार करने की आवश्यकता है। ? वर्तमान में, हमारे पास लगभग 10 होमग्रॉइन अनुप्रयोग हैं जो एक ही टॉमकैट सर्वर पर चल रहे हैं और इन छोटे अनुप्रयोगों के लिए संसाधनों को साझा करने और एक सर्वर पर प्रबंधित होने की क्षमता अच्छी है। हमारे एप्लिकेशन उपयोगकर्ताओं को उनके वातावरण में चलाने के लिए अंतिम उपयोगकर्ताओं को वितरित करने के लिए लक्षित नहीं हैं। हालांकि, अगर हम एक नए जावा फ्रेमवर्क का लाभ उठाने का फैसला करते हैं, तो आगे बढ़ना चाहिए, क्या यह दृष्टिकोण बदलना चाहिए? क्या क्लाउड परिनियोजन (जैसे, हरोकू) के बढ़ते उपयोग के कारण निष्पादन योग्य जार में बदलाव होता है?
यदि आपके पास एकल एप्लिकेशन सर्वर पर पारंपरिक युद्ध फ़ाइल परिनियोजन बनाम परिनियोजन की शैली में कई एप्लिकेशन प्रबंधित करने का अनुभव है, तो कृपया अपनी जानकारी साझा करें।