स्टेट मशीन बनाना
विभिन्न उपयोग-परिस्थितियों के लिए अलग-अलग स्टेट मशीन प्रकार (Standard, Express) डिज़ाइन और लागू करें तथा Lambda और अन्य सेवाओं से एकीकृत करें।
स्टेट मशीन बनाना, CoddyKit पर AWS Lambda और API Gateway के साथ सर्वररहित बैकएंड का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह AWS Lambda और API Gateway के साथ सर्वररहित बैकएंड सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। AWS Lambda और API Gateway के साथ सर्वररहित बैकएंड पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
अपना पहला कार्यप्रवाह बनाएँ
वापसी पर आपका स्वागत है! पिछले पाठ में हमने सीखा था कि AWS Step Functions क्या हैं। अब इन्हें बनाना शुरू करते हैं!
आप अलग-अलग चरण (स्थितियाँ) परिभाषित करना और उन्हें जोड़कर शक्तिशाली, स्वचालित कार्यप्रवाह बनाना सीखेंगे। हम कार्यप्रवाहों के दो मुख्य प्रकारों: Standard और Express, को भी समझेंगे।
स्टेट मशीन की संरचना
Step Functions की स्टेट मशीन एक ऐसा कार्यप्रवाह है, जो स्थितियों नामक चरणों की शृंखला परिभाषित करता है। प्रत्येक स्थिति कोई विशिष्ट कार्य करती है या निर्णय लेती है।
- स्थितियाँ: आपके कार्यप्रवाह के अलग-अलग चरण।
- संक्रमण: अगली स्थिति कौन-सी होगी, यह निर्धारित करने वाले नियम।
- इनपुट/आउटपुट: स्थितियों के बीच भेजा जाने वाला डेटा।
इसे एक ऐसे फ़्लोचार्ट की तरह समझिए, जिसे AWS चलाता है!
सामान्य स्थिति प्रकार
Step Functions आपके तर्क को बनाने के लिए कई प्रकार की स्थितियाँ उपलब्ध कराता है:
- कार्य: किसी सेवा को कॉल करके काम करता है, जैसे Lambda या ECS।
- पास: कोई काम किए बिना अपने इनपुट को आउटपुट में भेजता है। डीबग करने या संरचना बनाने के लिए उपयोगी है।
- विकल्प: शाखित तर्क (if/else) जोड़ता है।
- प्रतीक्षा: निर्धारित समय तक या किसी विशिष्ट समय तक निष्पादन रोकता है।
- सफल/विफल: निष्पादन को सफलतापूर्वक या किसी त्रुटि के साथ रोकता है।
- समानांतर: कई शाखाओं को समानांतर रूप से चलाता है।
सरल पास स्थिति परिभाषित करना
आइए एक सरल Pass स्थिति से शुरुआत करते हैं। यह स्थिति अपने इनपुट को लेकर उसे आउटपुट के रूप में भेजती है। इसका उपयोग अक्सर परीक्षण या अपनी स्टेट मशीन की संरचना बनाने के लिए किया जाता है।
स्टेट मशीनों को Amazon States Language (ASL) का उपयोग करके परिभाषित किया जाता है, जो JSON-आधारित संरचना है।
पास स्थिति का ASL उदाहरण
ASL में Pass स्थिति इस तरह दिखाई देती है। यह स्थिति का नाम, उसका प्रकार और अगली स्थिति का स्थान परिभाषित करती है।
{ "Comment": "A simple Pass state machine",
"StartAt": "HelloWorld",
"States": {
"HelloWorld": {
"Type": "Pass",
"Result": {
"message": "Hello from Step Functions!"
},
"End": true
}
}
}Standard कार्यप्रवाह: टिकाऊ विकल्प
AWS Step Functions दो कार्यप्रवाह प्रकार उपलब्ध कराता है: Standard और Express।
Standard कार्यप्रवाह लंबे समय तक चलने वाले, टिकाऊ और ऑडिट किए जा सकने वाले कार्यप्रवाहों के लिए आदर्श होते हैं। ये एक वर्ष तक चल सकते हैं!
- टिकाऊपन: 90 दिनों तक निष्पादन का पूरा इतिहास सुरक्षित रखता है।
- ऑडिट क्षमता: प्रत्येक चरण और इनपुट/आउटपुट को ट्रैक करना आसान होता है।
- उपयोग के मामले: ऑर्डर पूर्ति, डेटा संसाधन पाइपलाइन और मानवीय अनुमोदन।
Express कार्यप्रवाह: गति और मापनीयता
एक्सप्रेस वर्कफ़्लो अधिक मात्रा वाले, इवेंट-आधारित कार्यभार के लिए डिज़ाइन किए गए हैं। कम अवधि वाले कार्यों के लिए ये बहुत तेज़ और अधिक किफ़ायती होते हैं।
- गति: प्रति सेकंड हज़ारों निष्पादन पूरे कर सकते हैं।
- लागत: प्रति निष्पादन और अवधि के आधार पर शुल्क लिया जाता है, इसलिए कम अवधि वाले कार्यों के लिए अक्सर सस्ते होते हैं।
- इतिहास: निष्पादन इतिहास सीमित होता है (CloudWatch Logs में 90 दिनों तक, Step Functions कंसोल में सीधे नहीं)।
- उपयोग के मामले: माइक्रोसर्विस ऑर्केस्ट्रेशन, रीयल-टाइम स्ट्रीमिंग डेटा प्रोसेसिंग और मोबाइल बैकएंड प्रोसेसिंग।
Lambda को एकीकृत करना: Task स्थिति
स्टेट मशीन में कार्य करने के सबसे सामान्य तरीकों में से एक है Task स्थिति का उपयोग करके AWS Lambda फ़ंक्शन को 호출 करना।
ASL में Resource फ़ील्ड कॉल किए जाने वाले Lambda फ़ंक्शन का ARN निर्दिष्ट करता है।
Step Functions के लिए उदाहरण Lambda
यह सरल Python Lambda फ़ंक्शन एक इवेंट (Step Functions से प्राप्त इनपुट) लेता है और संशोधित संदेश लौटाता है। Step Functions इसका आउटपुट अगली स्थिति को भेजेगा।
import json
def lambda_handler(event, context):
print(f"Received event: {json.dumps(event)}")
name = event.get('name', 'World')
return {
'statusCode': 200,
'body': f"Hello, {name}! This is from Lambda."
}वर्कफ़्लो प्रकार की चुनौती
आपको हर मिनट आने वाले हज़ारों IoT सेंसर रीडिंग को प्रोसेस करने के लिए एक वर्कफ़्लो बनाना है। प्रत्येक रीडिंग को प्रोसेस करने में 1 सेकंड से कम समय लगता है।
पुनरावलोकन: वर्कफ़्लो बनाना
बहुत अच्छा! आपने AWS Step Functions स्टेट मशीन बनाने की मूल बातें सीख ली हैं:
- स्टेट मशीन स्थितियों और संक्रमणों की एक श्रृंखला से परिभाषित होती हैं।
- मुख्य स्थिति प्रकारों में Task, Pass, Choice और Wait शामिल हैं।
- स्टैंडर्ड वर्कफ़्लो लंबे समय तक चलने वाली और ऑडिट की जा सकने वाली प्रक्रियाओं के लिए होते हैं।
- एक्सप्रेस वर्कफ़्लो अधिक मात्रा वाले, कम अवधि के कार्यों के लिए होते हैं।
- आप
Taskस्थिति का उपयोग करके Lambda फ़ंक्शन को एकीकृत कर सकते हैं।
अब हम जटिल वर्कफ़्लो के ऑर्केस्ट्रेशन का अध्ययन करेंगे!
एआई शिक्षक के साथ AWS Lambda और API Gateway के साथ सर्वररहित बैकएंड सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 12
- पाठ
- 48
अक्सर पूछे जाने वाले प्रश्न
क्या “स्टेट मशीन बनाना” पाठ निःशुल्क है?
हाँ—“स्टेट मशीन बनाना” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और AWS Lambda और API Gateway के साथ सर्वररहित बैकएंड पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। AWS Lambda और API Gateway के साथ सर्वररहित बैकएंड पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“स्टेट मशीन बनाना” में मैं क्या सीखूँगा?
विभिन्न उपयोग-परिस्थितियों के लिए अलग-अलग स्टेट मशीन प्रकार (Standard, Express) डिज़ाइन और लागू करें तथा Lambda और अन्य सेवाओं से एकीकृत करें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ AWS Lambda और API Gateway के साथ सर्वररहित बैकएंड का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या AWS Lambda और API Gateway के साथ सर्वररहित बैकएंड शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर AWS Lambda और API Gateway के साथ सर्वररहित बैकएंड शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।
“स्टेट मशीन बनाना” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस AWS Lambda और API Gateway के साथ सर्वररहित बैकएंड पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर AWS Lambda और API Gateway के साथ सर्वररहित बैकएंड पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- AWS Step Functions का परिचय
- स्टेट मशीन बनाना
- जटिल कार्यप्रवाहों का समन्वय
- स्टेट मशीन में त्रुटि प्रबंधन और पुनःप्रयास