AWS लैम्ब्डा क्या है? लैम्ब्डा फ़ंक्शन उदाहरणों के साथ

AWS लैम्ब्डा फ़ंक्शन से पहले, आइए समझते हैं:

सर्वरहित क्या है?

सर्वरलेस एक ऐसा शब्द है जो आम तौर पर सर्वरलेस अनुप्रयोगों को संदर्भित करता है। सर्वरलेस अनुप्रयोग वे होते हैं जिन्हें किसी सर्वर प्रावधान की आवश्यकता नहीं होती है और सर्वर को प्रबंधित करने की आवश्यकता नहीं होती है।

एडब्ल्यूएस लैम्ब्डा क्या है?

AWS लाम्बा द्वारा प्रदान किया गया एक इवेंट-संचालित, सर्वर रहित कंप्यूटिंग प्लेटफ़ॉर्म है Amazon हिस्सा Amazon वेब सेवाएँ। इसलिए आपको इस बात की चिंता करने की ज़रूरत नहीं है कि कौन से AWS संसाधन लॉन्च करने हैं, या आप उन्हें कैसे प्रबंधित करेंगे। इसके बजाय, आपको कोड को लैम्ब्डा पर डालना होगा, और यह चलता है।

AWS लैम्ब्डा में कोड को AWS सेवाओं में घटनाओं की प्रतिक्रिया के आधार पर निष्पादित किया जाता है जैसे S3 बकेट में फ़ाइलें जोड़ना/हटाना, HTTP अनुरोध Amazon एपीआई गेटवे, आदि। हालाँकि, Amazon लैम्ब्डा का उपयोग केवल पृष्ठभूमि कार्यों को निष्पादित करने के लिए किया जा सकता है।

AWS लैम्ब्डा फ़ंक्शन आपको ऑपरेटिंग सिस्टम (OS) एक्सेस नियंत्रण, OS पैचिंग, राइट-साइज़िंग, प्रोविज़निंग, स्केलिंग आदि के प्रबंधन के बजाय अपने मूल उत्पाद और व्यावसायिक तर्क पर ध्यान केंद्रित करने में मदद करता है।

AWS लैम्ब्डा कैसे काम करता है?

ब्लॉक आरेख के साथ निम्नलिखित AWS लैम्ब्डा उदाहरण कुछ आसान चरणों में AWS लैम्ब्डा के कामकाज की व्याख्या करता है:

AWS लैम्ब्डा ब्लॉक आरेख
AWS लैम्ब्डा ब्लॉक आरेख

चरण १: सबसे पहले अपना AWS Lambda कोड AWS Lambda द्वारा समर्थित किसी भी भाषा में अपलोड करें। Java, Python, Go और C# कुछ ऐसी भाषाएँ हैं जो AWS लैम्ब्डा फ़ंक्शन द्वारा समर्थित हैं।

चरण १: ये कुछ AWS सेवाएँ हैं जो आपको AWS लैम्ब्डा को ट्रिगर करने की अनुमति देती हैं।

चरण १: AWS लैम्ब्डा आपको कोड और ईवेंट विवरण अपलोड करने में मदद करता है जिस पर इसे ट्रिगर किया जाना चाहिए।

चरण १: AWS सेवाओं द्वारा ट्रिगर किए जाने पर AWS लैम्ब्डा कोड निष्पादित करता है:

चरण १: AWS केवल तभी शुल्क लेता है जब AWS लैम्ब्डा कोड निष्पादित होता है, अन्यथा नहीं।

ऐसा निम्नलिखित परिदृश्यों में होगा:

  • S3 बकेट में फ़ाइलें अपलोड करें
  • जब HTTP get/post एंडपॉइंट URL हिट होता है
  • डायनमो DB तालिकाओं को जोड़ने/संशोधित करने और हटाने के लिए
  • डेटा स्ट्रीम संग्रह की प्रक्रिया में
  • अधिसूचना करें
  • वेबसाइट की होस्टिंग
  • ईमेल भेजना

नोट: आपको याद रखना चाहिए कि आप AWS सेवाओं के लिए तभी शुल्क लेंगे जब AWS लैम्ब्डा कोड निष्पादित होगा, अन्यथा आपको कुछ भी भुगतान करने की आवश्यकता नहीं है।

AWS लैम्ब्डा को ट्रिगर करने वाली घटनाएँ

यहां, वे इवेंट दिए गए हैं जो AWS लैम्ब्डा का उपयोग करने पर ट्रिगर होंगे।

  • डायनमो डीबी तालिका में डेटा सम्मिलित करना, अद्यतन करना और हटाना
  • SNS में पुश नोटिफिकेशन शामिल करना
  • क्लाउडट्रेल में लॉग इतिहास खोजने के लिए
  • S3 ऑब्जेक्ट में प्रवेश
  • DynamoDB जब भी तालिका में डेटा जोड़ा, संशोधित या हटाया जाता है तो AWS लैम्ब्डा को ट्रिगर कर सकता है।
  • आपको कार्य को नियमित समय पैटर्न पर पूरा करने के लिए कार्यक्रम निर्धारित करने में मदद करता है।
  • S3 बकेट में ऑब्जेक्ट में संशोधन
  • यहां से भेजी गई सूचनाएं Amazon एसएनएस.
  • AWS लैम्ब्डा का उपयोग क्लाउडट्रेल लॉग को संसाधित करने के लिए किया जा सकता है
  • API गेटवे आपको GET/POST विधियों पर AWS लैम्ब्डा को ट्रिगर करने की अनुमति देता है।

AWS लाम्बा Concepts

समारोह:

फ़ंक्शन एक प्रोग्राम या स्क्रिप्ट है जो AWS लैम्ब्डा में चलता है। लैम्ब्डा आपके फ़ंक्शन में इनवोकेशन इवेंट पास करता है, जो किसी इवेंट को प्रोसेस करता है और उसका रिस्पॉन्स देता है।

रनटाइम:

रनटाइम विभिन्न भाषाओं में फ़ंक्शन की अनुमति देता है जो एक ही बेस निष्पादन वातावरण पर चलते हैं। यह आपको रनटाइम में अपने फ़ंक्शन को कॉन्फ़िगर करने में मदद करता है। यह आपके द्वारा चुने गए फ़ंक्शन से भी मेल खाता है प्रोग्रामिंग भाषा.

घटना स्रोत:

इवेंट स्रोत एक AWS सेवा है, जैसे Amazon एसएनएस, या एक कस्टम सेवा। यह ट्रिगर फ़ंक्शन आपको इसके तर्क को निष्पादित करने में मदद करता है।

लैम्ब्डा परतें:

लैम्ब्डा लेयर्स लाइब्रेरीज़, कस्टम रनटाइम्स और अन्य महत्वपूर्ण फ़ंक्शन निर्भरताओं के लिए एक महत्वपूर्ण वितरण तंत्र हैं। यह AWS घटक आपको अपने विकास फ़ंक्शन कोड को उस अपरिवर्तनीय कोड और संसाधनों से अलग से प्रबंधित करने में भी मदद करता है जिसका वह उपयोग करता है।

लॉग स्ट्रीम:

लॉग स्ट्रीम आपको अपने फ़ंक्शन कोड को कस्टम लॉगिंग स्टेटमेंट के साथ एनोटेट करने की अनुमति देता है जो आपको अपने AWS लैम्ब्डा फ़ंक्शन के निष्पादन प्रवाह और प्रदर्शन का विश्लेषण करने में मदद करता है।

AWS लैम्ब्डा का उपयोग कैसे करें

अब, हम AWS लैम्ब्डा उदाहरण के साथ AWS लैम्ब्डा का उपयोग करना सीखेंगे:

चरण 1) चरण 1) AWS लैम्ब्डा URL खोलें
के लिए जाओ https://aws.amazon.com/lambda/ और आरंभ करें

AWS लैम्ब्डा का उपयोग कैसे करें

चरण 2) खाता बनाएं
इसके बाद, एक खाता बनाएं या अपने मौजूदा खाते से साइन इन करें

चरण 3) कोड संपादित करें और चलाएँ पर क्लिक करें,
अगले लैम्ब्डा पृष्ठ में,

  1. कोड संपादित करें
  2. रन पर क्लिक करें

AWS लैम्ब्डा का उपयोग कैसे करें

चरण 4) आउटपुट जांचें
आप आउटपुट देखेंगे

AWS लैम्ब्डा का उपयोग कैसे करें

AWS लैम्ब्डा बनाम AWS EC2

यहाँ, AWS लैम्ब्डा और के बीच कुछ प्रमुख अंतर हैं EC2.

पैरामीटर्स AWS लाम्बा एडब्ल्यूएस ईसी2
परिभाषा AWS लैम्ब्डा एक प्लेटफ़ॉर्म ऐज़ अ सर्विस (PaaS) है। यह आपको अपना बैकएंड कोड चलाने और निष्पादित करने में मदद करता है। AWS EC2 एक इन्फ्रास्ट्रक्चर ऐज़ अ सर्विस (laaS) है। यह वर्चुअलाइज्ड कंप्यूटिंग संसाधन प्रदान करता है।
लचीलापन कंप्यूट इंस्टेंस में लॉग इन करने के लिए कोई लचीलापन प्रदान नहीं करता है। यह आपको एक अनुकूलित ऑपरेटिंग सिस्टम या भाषा रनटाइम चुनने की अनुमति देता है। विभिन्न प्रकार के इंस्टैंस, कस्टम ऑपरेटिंग सिस्टम, सुरक्षा पैच और नेटवर्क आदि का चयन करने की सुविधा प्रदान करता है।
स्थापना प्रक्रिया आपको उस वातावरण का चयन करना होगा जहां आप कोड चलाना चाहते हैं और कोड को AWS लैम्ब्डा में पुश करना होगा। EC2 में पहली बार, आपको ऑपरेटिंग सिस्टम चुनना होगा और सभी आवश्यक सॉफ्टवेयर इंस्टॉल करने होंगे और फिर अपना कोड EC2 में डालना होगा।
पर्यावरण प्रतिबंध यह कुछ ही भाषाओं तक सीमित है। कोई पर्यावरण प्रतिबंध नहीं.

AWS लैम्ब्डा बनाम AWS इलास्टिक बीनस्टॉक

यहां, AWS लैम्ब्डा और इलास्टिक बीनस्टॉक के बीच कुछ प्रमुख अंतर दिए गए हैं।

पैरामीटर्स AWS इलास्टिक बीनस्टॉक AWS लाम्बा
मुख्य कार्य उन अनुप्रयोगों को चलाने वाले बुनियादी ढांचे की चिंता किए बिना AWS क्लाउड पर अनुप्रयोगों को तैनात और प्रबंधित करें। AWS लैम्ब्डा का उपयोग आपके बैक-एंड कोड को चलाने और निष्पादित करने के लिए किया जाता है। आप इसका उपयोग किसी एप्लिकेशन को तैनात करने के लिए नहीं कर सकते।
AWS संसाधनों का चयन यह आपको AWS संसाधनों का चयन करने की स्वतंत्रता देता है; उदाहरण के लिए, आप EC2 इंस्टेंस चुन सकते हैं जो आपके एप्लिकेशन के अनुसार इष्टतम है। आप AWS संसाधनों का चयन नहीं कर सकते, जैसे EC2 इंस्टेंस का प्रकार, लैम्ब्डा आपके कार्यभार के आधार पर संसाधन प्रदान करता है।
प्रणाली का प्रकार यह एक राज्यव्यापी प्रणाली है। यह एक राज्यविहीन प्रणाली है।

AWS लैम्ब्डा के उपयोग के मामले

AWS लैम्ब्डा का उपयोग कई प्रकार के अनुप्रयोगों के लिए किया जाता है जैसे:

  • ETL प्रक्रिया में आपकी सहायता करता है
  • आपको वास्तविक समय फ़ाइल प्रसंस्करण और वास्तविक समय स्ट्रीम प्रसंस्करण करने की अनुमति देता है
  • वेब अनुप्रयोग बनाने के लिए उपयोग करें
  • में उपयोग करना Amazon एलेक्सा चैटबॉट्स और जैसे उत्पाद Amazon इको/एलेक्सा
  • डेटा प्रोसेसिंग (वास्तविक समय स्ट्रीमिंग विश्लेषण)
  • रोज़मर्रा के कार्यों का स्वचालित बैकअप
  • स्केलेबल बैकएंड (मोबाइल ऐप, लोटी डिवाइस)
  • सर्वर-साइड बैकएंड लॉजिक को निष्पादित करने में आपकी सहायता करता है
  • आपको डेटा को फ़िल्टर और रूपांतरित करने की अनुमति देता है

लैम्ब्डा फ़ंक्शन के सर्वोत्तम अभ्यास

यहां कुछ सर्वोत्तम अभ्यास दिए गए हैं एडब्ल्यूएस लैम्ब्डा कार्य:

  • सही “टाइमआउट” का उपयोग करें।
  • स्थानीय संग्रहण के कार्यों का उपयोग करें जिसका आकार /temp फ़ोल्डर में 500MB है
  • स्टार्ट-अप कोड के उपयोग को न्यूनतम करना जो वर्तमान घटना के प्रसंस्करण से सीधे संबंधित नहीं है।
  • आपको अनुरोध विलंबता को देखने और अनुकूलित करने के लिए अपने लैम्ब्डा फ़ंक्शन की अंतर्निहित क्लाउडवॉच मॉनिटरिंग का उपयोग करना चाहिए।

AWS लैम्ब्डा का उपयोग कब न करें

निम्नलिखित स्थितियाँ हैं जहाँ लैम्ब्डा निश्चित रूप से एक आदर्श विकल्प नहीं है:

  • ऐसे AWS लैम्ब्डा सॉफ़्टवेयर पैकेज या एप्लिकेशन का उपयोग करना उचित नहीं है जो अंतर्निहित कॉलिंग पर निर्भर करते हैं Windows RPC शुरू
  • यदि इसका उपयोग एमएस-ऑफिस दस्तावेज़ प्रसंस्करण जैसे लाइसेंसिंग समझौतों के साथ कस्टम सॉफ़्टवेयर अनुप्रयोगों के लिए किया जाता है, Oracle डेटाबेस, आदि.
  • AWS लैम्ब्डा का उपयोग कस्टम हार्डवेयर प्रक्रिया जैसे GPU त्वरण, हार्डवेयर आत्मीयता के लिए नहीं किया जाना चाहिए।

AWS लैम्ब्डा का उपयोग करने के लाभ

AWS लैम्ब्डा का उपयोग करने के पक्ष/लाभ इस प्रकार हैं:

  • AWS लैम्ब्डा उपयोग करने के लिए एक अत्यधिक लचीला उपकरण है
  • यह आपको VPC सहित संसाधनों तक पहुंच प्रदान करने में मदद करता है
  • लेखक सीधे WYSIWYG संपादक कंसोल में.
  • आप इसे एक प्लगइन के रूप में उपयोग कर सकते हैं Eclipse और विजुअल स्टूडियो.
  • चूंकि यह सर्वर रहित आर्किटेक्चर है, इसलिए आपको सर्वर के प्रबंधन या प्रावधान के बारे में चिंता करने की आवश्यकता नहीं है।
  • आपको कोई भी सेटअप करने की आवश्यकता नहीं है आभासी मशीन.
  • डेवलपर्स को किसी भी बुनियादी ढांचे का निर्माण किए बिना घटनाओं के लिए कोड की प्रतिक्रिया को चलाने और निष्पादित करने में मदद करता है।
  • आपको केवल उस समय की गणना करने की आवश्यकता है, जब आपका कोड चलता है।
  • आप क्लाउडवॉच के माध्यम से वास्तविक समय में अपने कोड प्रदर्शन की निगरानी कर सकते हैं।
  • यह आपको बिना किसी प्रावधान के अपना कोड चलाने या किसी अन्य सर्वर का प्रबंधन करने की अनुमति देता है
  • आपको केवल आवश्यकता पड़ने पर ही कोड निष्पादित करने में सहायता करता है
  • आप इसे प्रतिदिन कुछ अनुरोधों को संभालने के लिए स्वचालित रूप से बढ़ा सकते हैं और यहां तक ​​कि प्रति सेकंड हजारों से अधिक अनुरोधों का समर्थन भी कर सकते हैं।
  • अनुसूचित कार्यों को निष्पादित करने के लिए AWS लैम्ब्डा को बाहरी इवेंट टाइमर की सहायता से कॉन्फ़िगर किया जा सकता है।
  • AWS में लैम्ब्डा फ़ंक्शन को बाहरी ईवेंट और टाइमर के साथ कॉन्फ़िगर किया जाना चाहिए ताकि; इसका उपयोग शेड्यूलिंग के लिए किया जा सके।
  • लैम्ब्डा फ़ंक्शन स्टेटलेस होते हैं, इसलिए इन्हें शीघ्रता से बढ़ाया जा सकता है।
  • AWS लैम्ब्डा तेज़ है इसलिए यह आपके कोड को मिलीसेकंड के भीतर निष्पादित करेगा।

AWS लैम्ब्डा की सीमाएँ

AWS लैम्ब्डा का उपयोग करने के नुकसान इस प्रकार हैं:

  • AWS लैम्ब्डा टूल छोटी परियोजनाओं के लिए उपयुक्त नहीं है।
  • AWS लैम्ब्डा बुनियादी ढांचे के लिए पूरी तरह से AWS पर निर्भर करता है, इसलिए यदि आपका कोड इसकी मांग करता है तो आप कोई अतिरिक्त सॉफ़्टवेयर स्थापित नहीं कर सकते।
  • समवर्ती निष्पादन 100 तक सीमित है
  • AWS लैम्ब्डा बुनियादी ढांचे के लिए पूरी तरह से AWS पर निर्भर है; यदि आपका कोड इसकी मांग करता है तो आप कोई अतिरिक्त सॉफ्टवेयर स्थापित नहीं कर सकते।
  • इसकी मेमोरी वॉल्यूम 128 से 1536 एमबी के बीच हो सकती है।
  • ईवेंट अनुरोध 128 KB से अधिक नहीं होना चाहिए.
  • लैम्ब्डा फ़ंक्शन आपको केवल क्लाउडवॉच में उनके लॉग लिखने में मदद करते हैं। यह एकमात्र ऐसा टूल है जो आपको अपने फ़ंक्शन की निगरानी या समस्या निवारण करने की अनुमति देता है।
  • इसका कोड निष्पादन टाइमआउट सिर्फ 5 मिनट है।

सारांश

  • सर्वरलेस एक शब्द है जो सामान्यतः सर्वर रहित अनुप्रयोगों को संदर्भित करता है।
  • AWS लैम्ब्डा ऐसी ही एक सर्वरलेस कंप्यूट सेवा है। इसलिए, आपको इस बारे में चिंता करने की ज़रूरत नहीं है कि कौन से AWS संसाधन लॉन्च किए जाएँ या वे उन्हें कैसे प्रबंधित करेंगे।
  • फ़ंक्शन एक प्रोग्राम या स्क्रिप्ट है जो AWS सर्वरलेस लैम्ब्डा में चलता है।
  • रनटाइम विभिन्न भाषाओं में फ़ंक्शनों को अनुमति देता है जो एक ही आधार निष्पादन वातावरण पर चलते हैं।
  • इवेंट स्रोत एक AWS सेवा है, जैसे Amazon एसएनएस, या एक कस्टम सेवा।
  • लैम्ब्डा परतें लाइब्रेरीज़, कस्टम रनटाइम्स और अन्य महत्वपूर्ण फ़ंक्शन निर्भरताओं के लिए एक महत्वपूर्ण वितरण तंत्र हैं।
  • लॉग स्ट्रीम आपको अपने फ़ंक्शन कोड को कस्टम लॉगिंग स्टेटमेंट के साथ एनोटेट करने की अनुमति देता है जो आपको अपने लैम्ब्डा फ़ंक्शन के निष्पादन प्रवाह और प्रदर्शन का विश्लेषण करने में मदद करता है।
  • AWS लैम्ब्डा एक प्लेटफ़ॉर्म ऐज़ अ सर्विस (PaaS) है। यह आपको अपना बैकएंड कोड चलाने और निष्पादित करने में मदद करता है।
  • AWS EC2 एक इन्फ्रास्ट्रक्चर ऐज़ अ सर्विस (laaS) है। यह वर्चुअलाइज्ड कंप्यूटिंग संसाधन प्रदान करता है।
  • उन अनुप्रयोगों को चलाने वाले बुनियादी ढांचे की चिंता किए बिना AWS क्लाउड पर अनुप्रयोगों को तैनात और प्रबंधित करें।
  • AWS लैम्ब्डा का उपयोग आपके बैक-एंड कोड को चलाने और निष्पादित करने के लिए किया जाता है। आप इसका उपयोग किसी एप्लिकेशन को तैनात करने के लिए नहीं कर सकते।
  • AWS लैम्ब्डा आपकी मदद करता है ईटीएल प्रक्रिया.
  • AWS में लैम्ब्डा फ़ंक्शन का सबसे अच्छा अभ्यास सही "टाइमआउट" का उपयोग करना है।
  • ऐसे AWS लैम्ब्डा सॉफ़्टवेयर पैकेज या एप्लिकेशन का उपयोग करना उचित नहीं है जो अंतर्निहित कॉलिंग पर निर्भर करते हैं Windows RPC शुरू
  • AWS लैम्ब्डा एक अत्यधिक लचीला उपकरण है।
  • AWS लैम्ब्डा टूल छोटी परियोजनाओं के लिए उपयुक्त नहीं है।
  • एक सामान्य घटना जो AWS लैम्ब्डा का उपयोग करते समय ट्रिगर होगी वह है डायनेमो DB तालिका में डेटा सम्मिलित करना, अद्यतन करना और हटाना।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: