लैम्ब्डा, AWS फ्लैगशिप सर्वर रहित सेवा, विभिन्न रनटाइम पर कोड चलाने की अनुमति देती है। हालाँकि PHP स्पष्ट रूप से आधिकारिक उत्पाद विवरण में नहीं है। क्या इसका मतलब यह है कि आप लैम्ब्डा पर PHP कोड नहीं चला सकते? नहीं, ऐसा नहीं है!
इस श्रृंखला में (एडब्ल्यूएस यूजर ग्रुप पोइटियर्स को मेरे द्वारा दी गई बातचीत से ली गई), हम चर्चा करेंगे कि सर्वर रहित क्या है और लैम्ब्डा पर चलने के लिए PHP (यदि वह आपकी पसंदीदा भाषा है) कैसे प्राप्त करें।
सर्वरलेस एक होस्टिंग प्रतिमान है जहां क्लाउड प्रदाता गतिशील रूप से ग्राहक के कार्यभार के लिए आवंटित संसाधनों को मापता है, जबकि न केवल भौतिक बुनियादी ढांचे (सर्वर, पावर कूलिंग) का प्रबंधन करता है बल्कि निष्पादन रनटाइम (पैचिंग, ..) तक भी प्रबंधन करता है।
सख्त अर्थों में, प्रत्येक अनुरोध के लिए गणना आवंटित की जाती है, जिससे "स्केल-टू-ज़ीरो" मूल्य निर्धारण मॉडल तैयार होता है (कोई संसाधन घंटे के हिसाब से भुगतान नहीं किया जाता है, बल्कि केवल वास्तविक मांग के अनुपात में होता है), जबकि अंतर्निहित उच्च प्रदान करता है -उपलब्धता.
यह अन्य क्लाउड लाभों को जोड़ता है, मुख्य रूप से यह तथ्य कि सब कुछ एक एपीआई के साथ आता है, जिससे स्वचालन संभव हो जाता है।
इन लाभों का योग वस्तुतः मुफ्त सुविधा-शाखा अल्पकालिक वातावरण, डेवलपर उत्पादकता और लीड समय को बढ़ावा देना संभव बनाता है।
सर्वर रहित पारिस्थितिकी तंत्र में बहुत सारे समाधान हैं। जब 2014 में सर्वर रहित कंप्यूट (लैम्ब्डा) सामने आया, तो प्रबंधित कतारें (एसक्यूएस) लगभग एक दशक तक और एस3 8 वर्षों तक मौजूद रहीं।
ध्यान दें कि ऊपर की स्लाइड में, ऑरोरा सर्वरलेस की हमारी सख्त परिभाषा से मेल नहीं खाता है क्योंकि यह शून्य तक स्केल नहीं करता है (v1 को शून्य से स्केल किया गया है लेकिन फिर शुरू होने में कुछ मिनट लग सकते हैं, v2 के साथ आपको यह करना होगा) डेटाबेस को प्रश्नों को प्रस्तुत करने के लिए तैयार करने के लिए आपके लेखक और पाठक दोनों उदाहरणों पर कम से कम 0.5 एसीयू।
आपको केवल सर्वर रहित सेवाओं को शामिल करने वाले वेब एप्लिकेशन को होस्ट करने के लिए एक विशिष्ट आर्किटेक्चर नीचे मिलेगा। सीमित संख्या में उपयोगकर्ताओं के लिए ऐसे एप्लिकेशन को होस्ट करने की लागत $1/वर्ष से कम हो सकती है।
हां और ना। इसे माइक्रोसर्विसेज को ध्यान में रखते हुए डिजाइन किया गया था, लेकिन आप अभी भी एक मोनोलिथिक आर्किटेक्चर को तैनात कर सकते हैं (जब तक आपके पास हर बार एक नया वातावरण लॉन्च होने पर लंबे समय तक चलने वाला स्टार्ट अप अनुक्रम नहीं होता है)।
माइक्रोसर्विसेज आर्किटेक्चर एप्लिकेशन घटकों के बीच युग्मन को कम करना संभव बनाता है (विभिन्न भाषाओं का उपयोग करके, अतुल्यकालिक पैटर्न के माध्यम से, बुनियादी ढांचे-स्तरीय युग्मन को हटाकर स्केलेबिलिटी में सुधार करता है)।
हालाँकि, जब हमारे पास कई एकल-उद्देश्यीय कार्य होते हैं, तो व्यावसायिक तर्क को लागू करने के लिए कार्यों के बीच समन्वय की आवश्यकता हो सकती है। यह समन्वय दो मूलभूत पैटर्न का उपयोग करके कार्यान्वित किया जा सकता है।
लैम्ब्डा AWS का फ़ंक्शन-ए-ए-सर्विस समाधान है। लैम्ब्डा के साथ आप अपने कोड को तैनात कर सकते हैं और इंस्टेंस परिनियोजन और ओएस या रनटाइम पैचिंग के बारे में चिंता किए बिना तुरंत उच्च-उपलब्धता और स्केलेबिलिटी प्राप्त कर सकते हैं।
लैम्ब्डा का उपयोग सिंक्रोनस इनवोकेशन (एपीआई गेटवे, एक एप्लिकेशन लोड बैलेंसर या लैम्ब्डा फ़ंक्शन यूआरएल के माध्यम से) या एसिंक्रोनस इनवोकैटन (या तो एडब्ल्यूएस-जनरेटेड या उपयोगकर्ता-जनित घटनाओं पर प्रतिक्रिया) के साथ किया जा सकता है।
जब आप लैम्ब्डा तैनात करते हैं तो आप चुनते हैं कि इसे चलाने के लिए कितनी मेमोरी की आवश्यकता है। आवंटित सीपीयू आनुपातिक है. फिर आप उपयोग किए गए मिलीसेकंड की संख्या के आधार पर भुगतान करते हैं। उदाहरण के लिए 128एमबी लैम्ब्डा की कीमत 1.7*10^-9$/ms है। अपना पहला डॉलर खर्च करने से पहले यह 164 घंटे की गणना है।
और लैम्ब्डा स्केल। तेज़। किसी भी अन्य चीज़ की तुलना में बहुत तेज़. उच्च ट्रैफ़िक भिन्नता के कारण अब 429 (या 500 यदि आपका कार्यभार अच्छी तरह से सुरक्षित नहीं है) त्रुटियाँ नहीं होंगी।
लैम्ब्डा निष्पादन वातावरण एक निश्चित समय में केवल एक ही अनुरोध को संसाधित करता है, और बाद के अनुरोधों के लिए पुन: उपयोग किया जाता है। इसका मतलब है कि, लैम्ब्डा फ़ंक्शन को स्केल करने के लिए, या जब लैम्ब्डा फ़ंक्शन को कुछ समय के लिए लागू नहीं किया गया है, तो लैम्ब्डा को एक नया निष्पादन वातावरण शुरू करना होगा: यह एक ठंडी शुरुआत है।
यदि कोल्ड स्टार्ट आपके एप्लिकेशन के लिए हानिकारक है (फिर से, यह शायद बेहतर है कि सभी ट्रैफ़िक धीमा हो या 429 पर पहुंच जाए), तो कुछ विकल्प हैं। AWS के पास लैम्ब्डा वार्मर का उपयोग करने या इसे संबोधित करने के लिए प्रावधानित समवर्ती सेटिंग सेट करने के बारे में एक अच्छा लेख है। इसके अलावा, जावा उपयोगकर्ताओं के लिए, लैम्ब्डा स्नैपस्टार्ट सुविधाएँ जेवीएम इनिट के बाद माइक्रोवीएम को स्नैपशॉट करके, अच्छा कोल्ड स्टार्ट प्रदर्शन प्रदान करना संभव बनाती हैं।
आधिकारिक उत्पाद FAQ में कहा गया है कि यह "मूल रूप से Java, Go, PowerShell, Node.js, C#, Python और Ruby कोड का समर्थन करता है, और एक रनटाइम एपीआई प्रदान करता है जो आपको अपने कार्यों को लिखने के लिए किसी भी अतिरिक्त प्रोग्रामिंग भाषा का उपयोग करने की अनुमति देता है।"
इस श्रृंखला के अगले ब्लॉग पोस्ट में, हम बताएंगे कि आप दो अलग-अलग फ्रेमवर्क, ब्रेफ और लैम्ब्डा वेब एडाप्टर का लाभ उठाकर लैम्ब्डा पर PHP कैसे चला सकते हैं, और उनमें से प्रत्येक द्वारा पेश की गई संभावनाओं की तुलना करें।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3