2017-04-07 26 views
5

पर वसंत बूट चल रहा है मैं अमेज़ॅन Lambda पर एक वसंत बूट आवेदन तैनात करने की कोशिश कर रहा हूँ। मैंने देखा है कि हैंडलर जल्दी जल्दी में कहा जाता है यदि - वसंत में ही फिर से लोड करने की कोशिश करता है, फिर से सेटअप datsources, सेम आदिअमेज़ॅन Lambda

वहाँ वैसे भी है स्प्रिंग बूट बताने के लिए ही reinitialize करने के लिए नहीं है, तो मुख्य पद्धति पहले से ही किया गया है फिर से लोड बुलाया?

धन्यवाद डेमियन

उत्तर

3

जहाँ तक मुझे पता है, एक अमेज़न लैम्ब्डा एक राज्यविहीन समारोह, कि हर अनुरोध के लिए instantiated जाता है।

यदि आप कई बार लैम्ब्डा को कॉल करते हैं, तो यह सामान्य है कि आप प्रत्येक अनुरोध के लिए स्प्रिंग बूट प्रारंभिकता देखते हैं।

यदि अनुरोध धीरे-धीरे आते हैं, तो यह संभव है कि एडब्ल्यूएस एक ही लैम्ब्डा को फिर से उपयोग कर रहा हो, इसलिए केवल एक वसंत प्रारंभिक कार्य किया जाता है।

यदि अनुरोध तेजी से आता है, या समानांतर में, एडब्ल्यूएस गतिशील रूप से स्केल करने के लिए लैम्ब्डा के अधिक उदाहरण लॉन्च करेगा। यह बताता है कि आप क्या सामना कर रहे हैं।

मुझे लगता है कि एक एडब्ल्यूएस लैम्ब्डा के रूप में पूरे स्प्रिंग एप्लिकेशन का उपयोग सही दृष्टिकोण नहीं है। एक Lambda एक स्टेटलेस समारोह होना चाहिए, जिसे जल्दी से तत्काल किया जा सकता है।

this tutorial में बताए गए अनुसार, आप लोड समय को कम करने और संसाधनों को बचाने के लिए जितना संभव हो सके अपने वसंत ऐप को बनाने की कोशिश कर सकते हैं।

+0

हाय @Stefan। मैं उन सभी बिंदुओं पर सहमत हूं। मैंने स्पिंग का उपयोग न करने के बारे में सोचा और स्पार्क जैसी चीजों को देखा लेकिन मैंने सोचा कि इसमें खराब कोडिंग प्रथाओं को पेश करने की क्षमता है। कोड के लिए मैं लिख रहा हूं - यह सभी कतार आधारित है। समय महत्वपूर्ण है और कुछ ऐसा है जो मुझे –

+0

के बारे में सचेत होगा। मुझे लगता है कि स्प्रिंग बूट डेवलपर्स के लिए यह एक नौकरी है जो एडब्ल्यूएस लैम्ब्डा में उपयोग करने योग्य ओवरहेड समय को कम करने के लिए विशेष रूप से एपीआई गेटवे के साथ संयोजन में, स्प्रिंग एमवीसी/वेब ऐप्स की सेवा के लिए है। यह पायथन/Django दुनिया में किया गया है: http://www.zappa.io –

+0

यदि आप इसे देखना चाहते हैं तो कृपया https://github.com/spring-projects/spring-boot/issues/10136 के लिए वोट दें –

संबंधित मुद्दे