spinny:~/writing $ less serverless-aws-lambda-vercel-cloudflare.md
12Serverless कंप्यूटिंग आपको बिना सर्वर प्रबंधित किए कोड चलाने देता है। आप फंक्शन लिखते हैं, उन्हें डिप्लॉय करते हैं, और प्लेटफॉर्म स्केलिंग, उपलब्धता और इन्फ्रास्ट्रक्चर को संभालता है। 2026 में, तीन प्लेटफॉर्म serverless परिदृश्य पर हावी हैं: **AWS Lambda**, **Vercel Serverless Functions**, और **Cloudflare Workers**। प्रत्येक की अलग-अलग ताकत और ट्रेड-ऑफ हैं।34इस लेख में, हम उनकी तुलना वास्तविक उदाहरणों, प्रदर्शन विचारों और मूल्य विश्लेषण के साथ करते हैं।56## Serverless कैसे काम करता है78```mermaid9graph LR10 User -- "HTTP Request" --> Gateway[API Gateway / Edge]11 Gateway -- "Invoke" --> Function[Serverless Function]12 Function -- "Response" --> User13 Function -- "Read/Write" --> DB[(Database)]14```1516आप एक फंक्शन डिप्लॉय करते हैं। जब कोई अनुरोध आता है, तो प्लेटफॉर्म:171. एक निष्पादन वातावरण शुरू करता है (या पहले से गर्म वातावरण का पुन: उपयोग करता है)182. आपका फंक्शन चलाता है193. प्रतिक्रिया लौटाता है204. निष्क्रिय होने पर शून्य तक स्केल करता है (आप निष्क्रिय समय के लिए भुगतान नहीं करते)2122## प्लेटफॉर्म अवलोकन2324### AWS Lambda2526मूल serverless प्लेटफॉर्म (2014 में लॉन्च किया गया)। सबसे परिपक्व और सुविधा-संपन्न, AWS इकोसिस्टम में गहरे एकीकरण के साथ।2728```javascript29// AWS Lambda handler30export const handler = async (event) => {31 const body = JSON.parse(event.body);3233 const result = await processData(body);3435 return {36 statusCode: 200,37 headers: { 'Content-Type': 'application/json' },38 body: JSON.stringify(result),39 };40};41```4243### Vercel Serverless Functions4445Next.js और फ्रंटएंड डिप्लॉयमेंट वर्कफ्लो के साथ कसकर एकीकृत। फंक्शन आपके फ्रंटएंड के साथ बिना किसी कॉन्फ़िगरेशन के डिप्लॉय होते हैं।4647```typescript48// app/api/hello/route.ts (Next.js App Router)49import { NextResponse } from 'next/server';5051export async function GET(request: Request) {52 const { searchParams } = new URL(request.url);53 const name = searchParams.get('name') || 'World';5455 return NextResponse.json({ message: `Hello, ${name}!` });56}57```5859### Cloudflare Workers6061दुनिया भर में 300 से अधिक शहरों में Cloudflare के एज नेटवर्क पर चलता है। Node.js के बजाय V8 इंजन (Chrome जैसा ही) का उपयोग करता है, जिसका मतलब है अत्यंत तेज कोल्ड स्टार्ट।6263```javascript64// Cloudflare Worker65export default {66 async fetch(request, env) {67 const url = new URL(request.url);68 const name = url.searchParams.get('name') || 'World';6970 return new Response(71 JSON.stringify({ message: `Hello, ${name}!` }),72 { headers: { 'Content-Type': 'application/json' } }73 );74 },75};76```7778## सुविधा तुलना7980| सुविधा | AWS Lambda | Vercel Functions | Cloudflare Workers |81|---------|-----------|-----------------|-------------------|82| **रनटाइम** | Node.js, Python, Go, Rust, Java, .NET | Node.js, Python, Go, Ruby | V8 Isolates (JS/TS, Rust via WASM) |83| **अधिकतम निष्पादन समय** | 15 मिनट | 60s (Hobby), 300s (Pro) | 30s (मुफ्त), 15min (सशुल्क) |84| **मेमोरी** | 128MB - 10GB | 1024MB - 3008MB | 128MB |85| **कोल्ड स्टार्ट** | 100-500ms | 100-300ms | < 5ms |86| **डिप्लॉय स्थान** | एकल क्षेत्र (या मल्टी प्रयास के साथ) | कई क्षेत्र | 300+ एज स्थान |87| **अधिकतम पेलोड** | 6MB (सिंक्रोनस), 256KB (एसिंक्रोनस) | 4.5MB | 100MB |88| **अंतर्निहित स्टोरेज** | नहीं (DynamoDB, S3 का उपयोग करें) | नहीं (बाहरी DB का उपयोग करें) | KV, D1 (SQLite), R2 (S3-संगत) |89| **मूल्य निर्धारण मॉडल** | प्रति अनुरोध + अवधि | योजना में शामिल | प्रति अनुरोध + अवधि |90| **मुफ्त स्तर** | 1M अनुरोध/माह | 100K/माह (Hobby) | 100K अनुरोध/दिन |9192## कोल्ड स्टार्ट9394कोल्ड स्टार्ट एक नए फंक्शन इंस्टेंस को इनिशियलाइज़ करने में लगने वाला समय है। यह serverless के साथ सबसे बड़ी प्रदर्शन चिंता है।9596```mermaid97graph LR98 subgraph "Cold Start"99 A[Request] --> B[Provision Environment]100 B --> C[Load Code]101 C --> D[Initialize Runtime]102 D --> E[Execute Function]103 end104105 subgraph "Warm Invocation"106 F[Request] --> G[Execute Function]107 end108```109110| प्लेटफॉर्म | विशिष्ट कोल्ड स्टार्ट | क्यों |111|----------|-------------------|-----|112| **Cloudflare Workers** | < 5ms | V8 आइसोलेट, पूर्ण रनटाइम की आवश्यकता नहीं |113| **Vercel Functions** | 100-300ms | एज या क्षेत्रीय पर Node.js रनटाइम |114| **AWS Lambda** | 100-500ms | पूर्ण कंटेनर इनिशियलाइज़ेशन |115| **AWS Lambda (Java)** | 1-5 सेकंड | JVM स्टार्टअप ओवरहेड |116117Cloudflare Workers कोल्ड स्टार्ट में भारी अंतर से जीतता है क्योंकि वे कंटेनर के बजाय V8 आइसोलेट का उपयोग करते हैं।118119## मूल्य तुलना120121### मुफ्त स्तर122123| प्लेटफॉर्म | मुफ्त अनुरोध | मुफ्त कंप्यूट |124|----------|--------------|--------------|125| **AWS Lambda** | 1M/माह | 400,000 GB-सेकंड |126| **Vercel** | 100K/माह | Hobby योजना में शामिल |127| **Cloudflare Workers** | 100K/दिन (~3M/माह) | प्रति आमंत्रण 10ms CPU |128129### बड़े पैमाने पर (10M अनुरोध/माह, 50ms औसत अवधि)130131| प्लेटफॉर्म | अनुमानित मासिक लागत |132|----------|----------------------|133| **AWS Lambda** | ~$2.50 (अनुरोध) + ~$4.15 (कंप्यूट) = **~$6.65** |134| **Vercel** | **$20/माह** (Pro योजना, फंक्शन शामिल) |135| **Cloudflare Workers** | **$5/माह** (सशुल्क योजना, 10M अनुरोध शामिल) |136137अधिकांश उपयोग मामलों के लिए, Cloudflare Workers सबसे सस्ता है। Vercel की कीमत सरल है लेकिन इसमें पूरा प्लेटफॉर्म (होस्टिंग, CDN, एनालिटिक्स) शामिल है। AWS Lambda की सबसे विस्तृत मूल्य निर्धारण है।138139## वास्तविक दुनिया के उपयोग मामले140141### AWS Lambda: सबसे अच्छा इसके लिए142143- **जटिल बैकएंड वर्कफ्लो** - step functions, इवेंट-ड्रिवन आर्किटेक्चर144- **AWS सेवाओं के साथ एकीकरण** - S3 ट्रिगर, DynamoDB स्ट्रीम, SQS कतार145- **लंबे समय तक चलने वाले कार्य** - 15 मिनट तक का निष्पादन समय146- **बहु-भाषा टीमें** - रनटाइम की सबसे विस्तृत श्रेणी का समर्थन करता है147148```mermaid149graph TD150 S3[S3 Upload] --> Lambda1[Process Image]151 Lambda1 --> SQS[SQS Queue]152 SQS --> Lambda2[Generate Thumbnails]153 Lambda2 --> DDB[DynamoDB]154 DDB --> Lambda3[Send Notification]155 Lambda3 --> SNS[SNS / Email]156```157158### Vercel Functions: सबसे अच्छा इसके लिए159160- **Next.js एप्लिकेशन** - शून्य-कॉन्फ़िग API रूट161- **फ्रंटएंड-प्रथम टीमें** - फ्रंटएंड और बैकएंड एक साथ डिप्लॉय करें162- **तेज प्रोटोटाइपिंग** - git push से डिप्लॉय163- **Jamstack आर्किटेक्चर** - स्टैटिक फ्रंटएंड + serverless API164165```typescript166// app/api/subscribe/route.ts167import { NextResponse } from 'next/server';168169export async function POST(request: Request) {170 const { email } = await request.json();171172 // Validate173 if (!email || !email.includes('@')) {174 return NextResponse.json(175 { error: 'Invalid email' },176 { status: 400 }177 );178 }179180 // Save to database181 await db.subscribers.create({ email });182183 return NextResponse.json({ success: true });184}185```186187### Cloudflare Workers: सबसे अच्छा इसके लिए188189- **कम विलंबता API** - कोड दुनिया भर में 300 से अधिक स्थानों पर चलता है190- **एज कंप्यूटिंग** - प्रतिक्रियाओं को बदलना, A/B परीक्षण, वैयक्तिकरण191- **उच्च-मात्रा API** - उदार मुफ्त स्तर के साथ बड़े पैमाने पर सबसे सस्ता192- **वैश्विक एप्लिकेशन** - KV और D1 के साथ उपयोगकर्ताओं के करीब डेटा193194```javascript195// Edge-side A/B test196export default {197 async fetch(request, env) {198 const url = new URL(request.url);199200 // Assign user to variant201 const cookie = request.headers.get('Cookie') || '';202 let variant = cookie.includes('ab=b') ? 'b' : 'a';203204 if (!cookie.includes('ab=')) {205 variant = Math.random() < 0.5 ? 'a' : 'b';206 }207208 // Fetch the appropriate version209 const response = await fetch(`${url.origin}/variants/${variant}`);210 const newResponse = new Response(response.body, response);211212 // Set cookie for consistent experience213 newResponse.headers.set('Set-Cookie', `ab=${variant}; Path=/; Max-Age=86400`);214215 return newResponse;216 },217};218```219220## कब कौन सा चुनें221222### AWS Lambda चुनें अगर:223- आप पहले से AWS इकोसिस्टम में निवेशित हैं224- आपको लंबे समय तक चलने वाले फंक्शन चाहिए (15 मिनट तक)225- आपको जटिल इवेंट-ड्रिवन आर्किटेक्चर चाहिए226- आपको JavaScript से परे रनटाइम चाहिए (Python, Go, Rust, Java)227228### Vercel Functions चुनें अगर:229- आप Next.js या फ्रंटएंड फ्रेमवर्क के साथ बना रहे हैं230- आप सबसे सरल डिप्लॉय अनुभव चाहते हैं (git push)231- आपकी टीम फ्रंटएंड-केंद्रित है232- आप एक प्लेटफॉर्म में होस्टिंग + फंक्शन + CDN चाहते हैं233234### Cloudflare Workers चुनें अगर:235- आपको वैश्विक स्तर पर न्यूनतम संभव विलंबता चाहिए236- आप बड़े पैमाने पर सबसे सस्ता विकल्प चाहते हैं237- आपको एज कंप्यूटिंग क्षमताएं चाहिए238- कोल्ड स्टार्ट समय आपके उपयोग मामले के लिए महत्वपूर्ण है239240## क्या आप उन्हें जोड़ सकते हैं?241242बिल्कुल। एक सामान्य आर्किटेक्चर:243244```mermaid245graph TD246 User --> CF[Cloudflare Workers\nEdge caching, routing, A/B tests]247 CF --> Vercel[Vercel\nNext.js frontend + API routes]248 Vercel --> Lambda[AWS Lambda\nHeavy processing, background jobs]249 Lambda --> S3[S3 Storage]250 Lambda --> DB[(Database)]251```252253- **Cloudflare Workers**: एज रूटिंग, कैशिंग, सुरक्षा254- **Vercel Functions**: फ्रंटएंड API रूट, SSR255- **AWS Lambda**: भारी बैकएंड प्रोसेसिंग, शेड्यूल किए गए कार्य, इवेंट पाइपलाइन256257## निष्कर्ष258259Serverless काफी परिपक्व हो चुका है। 2026 में, AWS Lambda, Vercel Functions और Cloudflare Workers के बीच चुनाव आपके स्टैक और प्राथमिकताओं पर निर्भर करता है:260261- **सबसे सरल डेवलपर अनुभव**: Vercel262- **सबसे शक्तिशाली और लचीला**: AWS Lambda263- **सर्वश्रेष्ठ प्रदर्शन और मूल्य**: Cloudflare Workers264265तीनों उत्पादन-तैयार और युद्ध-परीक्षित हैं। अपने वर्तमान स्टैक के अनुकूल से शुरू करें, और अपनी जरूरतों के बढ़ने पर विस्तार करें।266
:Serverless व्यवहार में: AWS Lambda vs Vercel Functions vs Cloudflare Workerslines 1-266 (END) — press q to close