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

⚡ स्मार्ट सारांश

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

  • सर्वर रहित मॉडल: AWS Lambda सर्वर को प्रोविजन या मैनेज किए बिना कोड चलाता है, जिससे ऑपरेटिंग सिस्टम पैचिंग, स्केलिंग और क्षमता नियोजन की आवश्यकता समाप्त हो जाती है।
  • इवेंट-आधारित निष्पादन: AWS सेवाओं जैसे S3 से फ़ंक्शन ट्रिगर होते हैं, DynamoDBएपीआई गेटवे और एसएनएस, केवल तभी चलते हैं जब कोई घटना घटित होती है।
  • 🧩 भाषा समर्थन: लैम्डा नोड.जेएस को सपोर्ट करता है। Python, JavaGo, C#, और Ruby, साथ ही अन्य भाषाओं के लिए कस्टम रनटाइम।
  • ???? उपयोग के अनुसार भुगतान करें: Billयह शुल्क केवल कोड के निष्पादन के दौरान लागू होता है, जिसे मिलीसेकंड में मापा जाता है, और इसमें एक स्थायी मासिक निःशुल्क स्तर पर दस लाख अनुरोधों की अनुमति है।
  • मुख्य अवधारणाएँ: फंक्शन, रनटाइम, इवेंट सोर्स, लेयर और लॉग स्ट्रीम यह परिभाषित करते हैं कि लैम्डा कोड को कैसे निष्पादित और प्रबंधित करता है।
  • 🤖 एआई सहायता: GitHub कोपायलट और Amazon Q लैम्डा कोड जनरेट करता है, जबकि लैम्डा जनरेटिव एआई इन्फरेंस को व्यवस्थित करता है। Amazon आधारशिला।

AWS Lambda क्या है?

AWS Lambda को समझने से पहले, यह जानना ज़रूरी है कि सर्वरलेस का मतलब क्या है।

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

AWS Lambda का उपयोग करने पर निम्नलिखित घटनाएँ घटित होंगी।

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

AWS लाम्बा Concepts

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

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

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

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

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

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

अब हम AWS Lambda के एक उदाहरण के साथ AWS Lambda का उपयोग करना सीखेंगे:

चरण 1) ओपन एडब्ल्यूएस लैम्डा URL

https://aws.amazon.com/lambda/ और शुरुआत करें।

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

चरण 2) खाता बनाएं

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

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

चरण 3) कोड को संपादित करें और रन पर क्लिक करें।

अगले लैम्डा पेज में, कोड को संपादित करें और रन पर क्लिक करें।

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

आपको आउटपुट दिखाई देगा।

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

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

AWS Lambda और इसके बीच कुछ प्रमुख अंतर इस प्रकार हैं: EC2.

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

AWS Lambda बनाम AWS Elastic Beanstalk

AWS Lambda और Elastic के बीच कुछ प्रमुख अंतर इस प्रकार हैं। Beanstalk.

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

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

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

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

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

AWS Lambda फ़ंक्शंस के कुछ सर्वोत्तम अभ्यास इस प्रकार हैं:

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

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

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

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

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

AWS Lambda का उपयोग करने के लाभ इस प्रकार हैं:

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

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

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

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

अक्सर पूछे जाने वाले प्रश्न

AWS Lambda में Node.js का नेटिव सपोर्ट मौजूद है। Python, JavaGo, C#, PowerShell और Ruby। रनटाइम API और कंटेनर इमेज सपोर्ट की मदद से आप लगभग किसी भी अन्य भाषा को चला सकते हैं, इसलिए टीमें शायद ही कभी अपने पसंदीदा स्टैक से सीमित होती हैं।

AWS Lambda में प्रति माह दस लाख अनुरोधों और 400,000 GB-सेकंड कंप्यूटिंग क्षमता का एक स्थायी निःशुल्क टियर शामिल है। इसके बाद, आपको केवल अनुरोधों और आपके कोड द्वारा वास्तव में उपयोग किए गए कंप्यूटिंग समय के लिए भुगतान करना होगा, जिसका बिल प्रति मिलीसेकंड के हिसाब से लिया जाएगा।

कोल्ड स्टार्ट वह छोटा विलंब है जब लैम्डा किसी निष्क्रिय फ़ंक्शन के लिए एक नया निष्पादन वातावरण आरंभ करता है। आप प्रोविज़न्ड कॉन्करेंसी, छोटे पैकेज या स्नैपस्टार्ट का उपयोग करके इसे कम कर सकते हैं। Java कार्य करता है.

जी हां। ज़िप आर्काइव अपलोड करने के अलावा, लैम्डा आपको 10 जीबी तक के कंटेनर इमेज के रूप में फ़ंक्शन को पैकेज करने की सुविधा देता है। यह बड़ी डिपेंडेंसी और मशीन लर्निंग लाइब्रेरी के लिए उपयुक्त है, साथ ही साथ आकार को भी नियंत्रित रखता है।ping वही इवेंट-ड्रिवन, सर्वरलेस निष्पादन मॉडल।

Lambda स्वचालित स्केलिंग और प्रति मिलीसेकंड बिलिंग के साथ छोटे, इवेंट-आधारित फ़ंक्शन चलाता है। AWS Fargate सर्वर प्रबंधन के बिना लंबे कंटेनरीकृत वर्कलोड चलाता है। त्वरित इवेंट प्रतिक्रियाओं के लिए Lambda और स्थिर, लंबे समय तक चलने वाले कंटेनर कार्यों के लिए Fargate चुनें।

हाँ। लैम्डा आमतौर पर हल्के अनुमानों को चलाकर और सेवाओं जैसे कि कॉल को व्यवस्थित करके एआई अनुप्रयोगों को शक्ति प्रदान करता है। Amazon बेडरॉक और सेजमेकर। कंटेनर इमेज सपोर्ट मशीन लर्निंग लाइब्रेरी को पैकेज करने में मदद करता है, जबकि लैम्डा जनरेटिव एआई पाइपलाइन के स्केलिंग को संभालता है।

हां. गिटहब कोपिलॉट टिप्पणी या नाम से हैंडलर फ़ंक्शन लिखता है, जबकि Amazon Q Developer ने IAM नीतियों, CloudFormation और SDK कॉल के लिए AWS-अनुकूल सहायता जोड़ी है, जिससे सर्वर रहित विकास में तेजी आती है।

प्रत्येक फ़ंक्शन को न्यूनतम विशेषाधिकार वाली IAM भूमिका प्रदान करें, गुप्त डेटा को एन्क्रिप्टेड एनवायरनमेंट वैरिएबल या सीक्रेट्स मैनेजर में संग्रहित करें, और संवेदनशील फ़ंक्शन को VPC के अंदर रखें। क्लाउडवॉच और क्लाउडट्रेल फिर निगरानी और ऑडिटिंग के लिए गतिविधि को लॉग करते हैं।

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