TypeScript पर सर्वरलेस फ़ंक्शन: AWS Lambda शुरू से

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

TypeScript पर सर्वरलेस फ़ंक्शन का परिचय



सर्वरलेस (सर्वर रहित) कंप्यूटिंग एप्लिकेशन के विकास और तैनाती के दृष्टिकोण को मौलिक रूप से बदल देती है। सर्वर प्रबंधित करने के बजाय, डेवलपर्स पूरी तरह से कोड लिखने पर ध्यान केंद्रित करते हैं। AWS Lambda सर्वरलेस फ़ंक्शन बनाने के लिए अग्रणी सेवा है, और TypeScript इसमें स्थैतिक टाइपिंग की विश्वसनीयता जोड़ता है।



इस लेख में, हम विस्तार से समझेंगे कि AWS Lambda का उपयोग करके TypeScript पर सर्वरलेस फ़ंक्शन कैसे बनाएं, कॉन्फ़िगर करें और तैनात करें। आप सीखेंगे कि कुशल कोड कैसे लिखें, इवेंट को कैसे संभालें और Lambda को अन्य AWS सेवाओं के साथ कैसे एकीकृत करें।



AWS Lambda क्या है और TypeScript क्यों?



AWS Lambda की मूल बातें



AWS Lambda एक कंप्यूटिंग सेवा है जो इवेंट के जवाब में आपका कोड चलाती है और स्वचालित रूप से कंप्यूटिंग संसाधनों का प्रबंधन करती है। आप केवल वास्तव में उपयोग किए गए निष्पादन समय (1 ms तक राउंड किया गया) के लिए भुगतान करते हैं।



मुख्य विशेषताएं:

  • इवेंट-संचालित आर्किटेक्चर — इवेंट होने पर फ़ंक्शन चलता है (HTTP अनुरोध, S3 में फ़ाइल अपलोड, DynamoDB में परिवर्तन)
  • स्वचालित स्केलिंग — एक अनुरोध से लेकर एक साथ हजारों तक
  • कई भाषाओं का समर्थन — Node.js (TypeScript), Python, Java, Go, .NET
  • मुफ़्त सीमा — प्रति माह 1 मिलियन अनुरोध (Free Tier के तहत)


Lambda के लिए TypeScript के लाभ



TypeScript JavaScript के ऊपर एक परत है जो स्थैतिक टाइपिंग जोड़ता है। सर्वरलेस फ़ंक्शन के लिए यह प्रदान करता है:

  • रनटाइम में कम त्रुटियाँ — कंपाइलर डिप्लॉयमेंट से पहले टाइप बेमेल को पकड़ लेता है
  • बेहतर कोड दस्तावेज़ीकरण — टाइप स्वयं-दस्तावेज़ीकरण के रूप में काम करते हैं
  • आधुनिक सुविधाओं का समर्थन — async/await, डेकोरेटर, जेनेरिक्स
  • AWS SDK के साथ एकीकरण — सभी AWS सेवाओं के लिए पूर्ण टाइप


TypeScript पर Lambda फ़ंक्शन बनाना और कॉन्फ़िगर करना



चरण 1: प्रोजेक्ट आरंभ करना



एक नया प्रोजेक्ट बनाएं और आवश्यक निर्भरताएँ स्थापित करें:



mkdir my-lambda-functioncd my-lambda-functionnpm init -ynpm install --save-dev typescript @types/node aws-sdknpm install --save-dev @types/aws-lambda


चरण 2: TypeScript कॉन्फ़िगरेशन



tsconfig.json फ़ाइल बनाएं:



{  "compilerOptions": {    "target": "ES2020",    "module": "commonjs",    "lib": ["ES2020"],    "outDir": "./dist",    "rootDir": "./src",    "strict": true,    "esModuleInterop": true,    "skipLibCheck": true,    "forceConsistentCasingInFileNames": true,    "resolveJsonModule": true,    "declaration": true  },  "include": ["src/**/*"],  "exclude": ["node_modules", "dist"]}


चरण 3: Lambda फ़ंक्शन लिखना



src डायरेक्टरी और src/handler.ts फ़ाइल बनाएं:



import { Context, APIGatewayProxyEvent, APIGatewayProxyResult } from 'aws-lambda';

interface UserData { userId: string; name: string; email: string;}

export const handler = async ( event: APIGatewayProxyEvent, context: Context): Promise<APIGatewayProxyResult> => { console.log('Event:', JSON.stringify(event, null, 2)); console.log('Context:', context);

try { // अनुरोध बॉडी को पार्स करना const body: UserData = JSON.parse(event.body || '{}');

// डेटा सत्यापन if (!body.userId || !body.name || !body.email) { return { statusCode: 400, headers: { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*' }, body: JSON.stringify({ message: 'Missing required fields: userId, name, email' }) }; }

ब्लॉग

पुस्तक अनुशंसाएँ