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