लैम्ब्डा फ़ंक्शन को लागू करने के लिए उपलब्ध ट्रिगर्स का परिचय

Laimbda Fanksana Ko Lagu Karane Ke Li E Upalabdha Trigarsa Ka Paricaya



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

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

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







आह्वान के प्रकार

इससे पहले कि हम आगे बढ़ें, आइए निम्नलिखित दो प्रमुख प्रकार के इनवोकेशन पर चर्चा करें जिन्हें लैम्ब्डा फंक्शन हैंडल कर सकता है।



  • तुल्यकालिक आमंत्रण
  • अतुल्यकालिक आह्वान
  1. तुल्यकालिक आमंत्रण
    सिंक्रोनस इनवोकेशन में, लैम्ब्डा को आमंत्रित करने वाली सेवा को तब तक इंतजार करना पड़ता है जब तक कि परिणाम उस पर वापस नहीं आ जाते और फिर बाकी प्रक्रिया को आगे बढ़ाते हैं। हम यह भी कह सकते हैं कि लैम्ब्डा फ़ंक्शन के आउटपुट को फ़ंक्शन या सेवा द्वारा ही आवश्यक है जो इस लैम्ब्डा को लागू करता है।
  2. अतुल्यकालिक आह्वान

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



लैम्ब्डा को आमंत्रित करने के विभिन्न तरीके

यहां, आप लैम्ब्डा फ़ंक्शन को लागू करने के कई तरीके देखने जा रहे हैं। अगली बार जब आप अपना सरल लेकिन किफ़ायती AWS इन्फ्रास्ट्रक्चर डिज़ाइन करते हैं तो यह जानना आपके लिए बहुत मददगार होता है।





सीधे लैम्ब्डा फ़ंक्शंस को आमंत्रित करें

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

प्रबंधन कंसोल से लैम्ब्डा को आमंत्रित करना

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



आप एक कस्टम ईवेंट बना सकते हैं और साथ ही अपने कस्टम ईवेंट पैटर्न के साथ कंसोल का उपयोग कर सकते हैं।

इस तरह, लैम्ब्डा फ़ंक्शन को AWS कंसोल से ट्रिगर किया जा सकता है।

एडब्ल्यूएस सीएलआई

AWS आपको AWS कमांड लाइन इंटरफ़ेस का उपयोग करके अपने सभी संसाधनों का उपयोग करने की क्षमता देता है। इस सीएलआई के साथ किसी भी लैम्ब्डा फ़ंक्शन को भी लागू किया जा सकता है। विकास के चरणों के दौरान चीजों का परीक्षण करने के लिए यह बहुत प्रभावी हो सकता है। एडब्ल्यूएस सीएलआई कमांड के बाद लैम्ब्डा फ़ंक्शन को लागू करने के लिए ट्रिगर के रूप में उपयोग किया जा सकता है।

[ईमेल सुरक्षित] :~$ एडब्ल्यूएस लैम्ब्डा आह्वान \
--फंक्शन-नाम < लैम्ब्डा फ़ंक्शन नाम दर्ज करें > \
--पेलोड < इनपुट मान के लिये लैम्ब्डा फंक्शन > \
--क्ली-बाइनरी-प्रारूप < बेस 64 | रॉ-इन-बेस64-आउट > < आउटपुट फ़ाइल नाम >

फ़ंक्शन सफलतापूर्वक चालू हो गया है और आप इसे आउटपुट में भी देख सकते हैं।

समारोह यूआरएल

फ़ंक्शन URL वास्तव में एक HTTP समापन बिंदु है जिसे आप अपने लैम्ब्डा फ़ंक्शन के लिए कॉन्फ़िगर कर सकते हैं। इस URL का उपयोग लैम्ब्डा फ़ंक्शंस को ट्रिगर करने के लिए किया जा सकता है और आप लैम्ब्डा फ़ंक्शंस को लागू करने के लिए इस URL को अपने AWS खाते के बाहर भी अन्य उपयोगकर्ताओं के साथ साझा कर सकते हैं। यद्यपि आपको फ़ंक्शन URL से सावधान रहना चाहिए, इस लिंक वाला कोई भी व्यक्ति आपके लैम्ब्डा फ़ंक्शन को अनगिनत बार ट्रिगर कर सकता है, और सभी लागतें आपके सिर पर होंगी।

एक फ़ंक्शन URL को लैम्ब्डा फ़ंक्शन बनाने के साथ-साथ बनाते समय भी कॉन्फ़िगर किया जा सकता है। इसके लिए, बस कॉन्फ़िगरेशन अनुभाग में उन्नत सेटिंग्स पर जाएं और जांचें फ़ंक्शन URL सक्षम करें डिब्बा।

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

इस तरह, फ़ंक्शन URL बनाया जाता है और लैम्ब्डा फ़ंक्शन को लागू करने के लिए उपयोग किया जाता है।

एडब्ल्यूएस सेवाओं का उपयोग करके लैम्ब्डा कार्यों को आमंत्रित करें

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

एपीआई गेटवे

यह एक एडब्ल्यूएस सेवा है जो आपके एप्लिकेशन मॉडल में एपीआई बनाने और प्रबंधित करने के लिए व्यापक रूप से उपयोग की जाती है। एपीआई एक सॉफ्टवेयर पैकेज से दूसरे पैकेज में अनुरोध या कॉल उत्पन्न करने का एक बहुत ही लचीला तरीका देता है जिसे हम सीधे उजागर नहीं कर सकते हैं और केवल पर्दे के पीछे रखना चाहते हैं।

किसी भी सेवा को अपने लैम्ब्डा फंक्शन में ट्रिगर के रूप में जोड़ने के लिए, बस लैम्ब्डा फंक्शन पर जाएँ और ऐड ट्रिगर पर क्लिक करें।

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

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

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

एचटीटीपी एपीआई : उनका उपयोग HTTP समापन बिंदु उत्पन्न करने के लिए किया जाता है जो आपके लैम्ब्डा कार्यों के लिए रूट किए जाते हैं। HTTP एपीआई कम कार्यक्षमता देते हैं और उपयोग में कम खर्चीले होते हैं।

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

S3 बाल्टी

बहुत सारे उपयोग के मामले हैं जहां आप देखेंगे कि S3 बकेट लैम्ब्डा फ़ंक्शन को लागू करने के लिए एक ट्रिगर के रूप में कार्य कर रहे हैं। आप किसी विशिष्ट S3 ईवेंट के लिए लैम्ब्डा फ़ंक्शन को ट्रिगर करने के लिए S3 बाल्टी को कॉन्फ़िगर कर सकते हैं।

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

ऐसे कई अन्य परिदृश्य हो सकते हैं जहां लैम्ब्डा फ़ंक्शन को लागू करने के लिए S3 को ट्रिगर के रूप में उपयोग किया जा सकता है।

भार संतुलन

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

लैम्ब्डा फ़ंक्शन में एप्लिकेशन लोड बैलेंसर जोड़ने के लिए, आपको पहले एक लक्ष्य समूह बनाना होगा और उस लक्ष्य समूह में लैम्ब्डा फ़ंक्शन जोड़ा जाएगा। अब, नए बनाए गए लक्ष्य समूह को एप्लिकेशन लोड बैलेंसर के श्रोताओं में जोड़ा जा सकता है।

क्लाउडफ्रंट

Amazon CloudFront वास्तव में एक CDN (कंटेंट डिलीवरी नेटवर्क) है और इसका उपयोग वास्तविक एप्लिकेशन सर्वर की तुलना में अंतिम उपयोगकर्ताओं के बहुत करीब किनारे वाले स्थानों पर एप्लिकेशन डेटा को कैश करने के लिए किया जाता है। CloudFront का उपयोग करके, आप वास्तव में दुनिया भर के अंतिम उपयोगकर्ताओं को स्थिर सामग्री प्रदान करने के लिए प्रतिक्रिया समय में सुधार कर सकते हैं।

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

आप अनुरोध भेजने के लिए CloudFront को ट्रिगर के रूप में सेट कर सकते हैं [ईमेल सुरक्षित] क्लाउडफ्रंट के माध्यम से प्रतिक्रिया समय में सुधार करने के लिए। के रूप में [ईमेल सुरक्षित] दुनिया भर में सभी किनारे के स्थानों पर तैनात किया गया है, अंतिम उपयोगकर्ताओं को लैम्ब्डा तैनात निकटतम किनारे स्थान तक पहुंचकर न्यूनतम प्रतिक्रिया समय का सामना करना पड़ता है।

इसे कॉन्फ़िगर करने के लिए, बस यहां जाएं ट्रिगर जोड़ें और CloudFront सेवा चुनें। वहां, आप देखेंगे करने के लिए तैनात [ईमेल सुरक्षित] विकल्प।

अब, आपको केवल कॉन्फ़िगरेशन चरणों को पूरा करने और इसे प्रारंभ करने की आवश्यकता है।

क्लाउडवॉच लॉग

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

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

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

अगला, लैम्ब्डा फ़ंक्शन चुनें जो आप चाहते हैं और आप जाने के लिए अच्छे हैं।

अब, जब भी CloudWatch उस लॉग स्ट्रीम को प्राप्त करता है, तो यह लैम्ब्डा फ़ंक्शन को लागू करने के लिए ट्रिगर के रूप में कार्य करता है।

इवेंट ब्रिज

Amazon EventBridge (पहले CloudWatch Events के रूप में जाना जाता था) एक AWS सेवा है जो आपको AWS खाते में होने वाली किसी विशिष्ट घटना पर विशिष्ट AWS सेवा को ट्रिगर करने के लिए ईवेंट नियम बनाने की अनुमति देती है।

एडब्ल्यूएस सेवाओं (जैसे ईसी 2 इंस्टेंस निर्माण या आरडीएस डेटाबेस इवेंट) के साथ-साथ तीसरे पक्ष की सेवाओं (जैसे गिटहब पुश इवेंट) के लिए आप कई तरह के नियम निर्धारित कर सकते हैं। इन नियमों को अन्य सेवाओं जैसे लैम्ब्डा फंक्शन्स के साथ इस प्रकार जोड़ा जा सकता है कि जब भी यह नियम संतुष्ट होता है, यह लैम्ब्डा फंक्शन को इनवाइट करता है।

यदि आपके पास EventBridge नियम पहले से सेट है, तो आप इस नियम को अपने लैम्ब्डा फ़ंक्शन में ट्रिगर के रूप में आसानी से जोड़ सकते हैं। EventBridge को अपने ट्रिगर के रूप में चुनें और बस नियम का नाम प्रदान करें।

यहां ट्रिगर के रूप में एक मौजूदा नियम जोड़ा गया है, लेकिन आप इस समय एक नियम भी बना सकते हैं।

डायनेमोडीबी

आप जानते होंगे कि DynamoDB सिर्फ एक NoSQL डेटाबेस है और यह AWS में पूरी तरह से अलग सेवा के रूप में दिखाई देता है। यह पूरी तरह से कॉन्फ़िगर किया गया सर्वर रहित डेटाबेस है और आप इसमें सीधे टेबल बनाना शुरू कर सकते हैं। इन DynamoDB तालिकाओं को लैम्ब्डा फ़ंक्शन को लागू करने के लिए ट्रिगर के रूप में कार्य करने के लिए कॉन्फ़िगर किया जा सकता है।

डायनेमोडीबी से डेटा को बैच के रूप में इनपुट के रूप में लैम्ब्डा में लोड किया जा सकता है और इसे लैम्ब्डा में तैनात कोड का उपयोग करके संसाधित किया जाता है।

किनेसिस

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

लैम्ब्डा फ़ंक्शन को लागू करने के लिए आपने अभी-अभी अपने किनेसिस डेटा स्ट्रीम को कॉन्फ़िगर किया है।

एसएनएस

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

पहले एक एसएनएस विषय बनाएं, फिर अपने लैम्ब्डा फ़ंक्शन को लागू करने के लिए इसका इस्तेमाल करें।

आपको अपने SNS विषय के नाम का चयन करना होगा। कोई अन्य कॉन्फ़िगरेशन या सेटिंग्स नहीं हैं।

निष्कर्ष

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