spinny:~/writing $ vim serverless-aws-lambda-vercel-cloudflare.md
1~2Serverless کمپیوٹنگ آپ کو سرورز کا انتظام کیے بغیر کوڈ چلانے دیتی ہے۔ آپ فنکشنز لکھتے ہیں، انہیں ڈیپلائے کرتے ہیں، اور پلیٹ فارم اسکیلنگ، دستیابی اور انفراسٹرکچر سنبھالتا ہے۔ 2026 میں، تین پلیٹ فارمز serverless منظر نامے پر غالب ہیں: **AWS Lambda**، **Vercel Serverless Functions** اور **Cloudflare Workers**۔ ہر ایک کی مختلف طاقتیں اور ٹریڈ آفس ہیں۔3~4اس مضمون میں، ہم حقیقی مثالوں، کارکردگی کے تحفظات اور قیمتوں کی تفصیل کے ساتھ ان کا موازنہ کرتے ہیں۔5~6## Serverless کیسے کام کرتا ہے7~8```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```15~16آپ ایک فنکشن ڈیپلائے کرتے ہیں۔ جب کوئی درخواست آتی ہے تو پلیٹ فارم:171. ایک ایگزیکیوشن ماحول شروع کرتا ہے (یا پہلے سے گرم ماحول دوبارہ استعمال کرتا ہے)182. آپ کا فنکشن چلاتا ہے193. جواب واپس کرتا ہے204. بیکار ہونے پر صفر تک اسکیل کرتا ہے (آپ بیکار وقت کی ادائیگی نہیں کرتے)21~22## پلیٹ فارم کا جائزہ23~24### AWS Lambda25~26اصل serverless پلیٹ فارم (2014 میں شروع ہوا)۔ سب سے پختہ اور خصوصیات سے بھرپور، AWS ایکو سسٹم میں گہرے انضمام کے ساتھ۔27~28```javascript29// AWS Lambda handler30export const handler = async (event) => {31 const body = JSON.parse(event.body);32~33 const result = await processData(body);34~35 return {36 statusCode: 200,37 headers: { 'Content-Type': 'application/json' },38 body: JSON.stringify(result),39 };40};41```42~43### Vercel Serverless Functions44~45Next.js اور فرنٹ اینڈ ڈیپلائیمنٹ ورک فلو کے ساتھ مضبوطی سے مربوط۔ فنکشنز آپ کے فرنٹ اینڈ کے ساتھ بغیر کسی کنفیگریشن کے ڈیپلائے ہوتے ہیں۔46~47```typescript48// app/api/hello/route.ts (Next.js App Router)49import { NextResponse } from 'next/server';50~51export async function GET(request: Request) {52 const { searchParams } = new URL(request.url);53 const name = searchParams.get('name') || 'World';54~55 return NextResponse.json({ message: `Hello, ${name}!` });56}57```58~59### Cloudflare Workers60~61دنیا بھر میں 300 سے زیادہ شہروں میں Cloudflare کے ایج نیٹ ورک پر چلتا ہے۔ Node.js کی بجائے V8 انجن (Chrome جیسا ہی) استعمال کرتا ہے، جس کا مطلب ہے انتہائی تیز کولڈ اسٹارٹس۔62~63```javascript64// Cloudflare Worker65export default {66 async fetch(request, env) {67 const url = new URL(request.url);68 const name = url.searchParams.get('name') || 'World';69~70 return new Response(71 JSON.stringify({ message: `Hello, ${name}!` }),72 { headers: { 'Content-Type': 'application/json' } }73 );74 },75};76```77~78## خصوصیات کا موازنہ79~80| خصوصیت | 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 درخواستیں/دن |91~92## کولڈ اسٹارٹس93~94کولڈ اسٹارٹ ایک نئے فنکشن انسٹنس کو شروع کرنے میں لگنے والا وقت ہے۔ یہ serverless کے ساتھ سب سے بڑی کارکردگی کی تشویش ہے۔95~96```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 end104~105 subgraph "Warm Invocation"106 F[Request] --> G[Execute Function]107 end108```109~110| پلیٹ فارم | عام کولڈ اسٹارٹ | کیوں |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 سٹارٹ اپ اوور ہیڈ |116~117Cloudflare Workers کولڈ اسٹارٹس میں بہت بڑے فرق سے جیتتا ہے کیونکہ یہ کنٹینرز کی بجائے V8 آئسولیٹس استعمال کرتا ہے۔118~119## قیمتوں کا موازنہ120~121### مفت درجہ122~123| پلیٹ فارم | مفت درخواستیں | مفت کمپیوٹ |124|----------|--------------|--------------|125| **AWS Lambda** | 1M/ماہ | 400,000 GB-سیکنڈ |126| **Vercel** | 100K/ماہ | Hobby پلان میں شامل |127| **Cloudflare Workers** | 100K/دن (~3M/ماہ) | فی استدعا 10ms CPU |128~129### بڑے پیمانے پر (10M درخواستیں/ماہ، اوسط مدت 50ms)130~131| پلیٹ فارم | تخمینی ماہانہ لاگت |132|----------|----------------------|133| **AWS Lambda** | ~$2.50 (درخواستیں) + ~$4.15 (کمپیوٹ) = **~$6.65** |134| **Vercel** | **$20/ماہ** (Pro پلان، فنکشنز شامل) |135| **Cloudflare Workers** | **$5/ماہ** (ادا شدہ پلان، 10M درخواستیں شامل) |136~137زیادہ تر استعمال کے معاملات کے لیے، Cloudflare Workers سب سے سستا ہے۔ Vercel کی قیمت سادہ ہے لیکن اس میں پورا پلیٹ فارم (ہوسٹنگ، CDN، اینالیٹکس) شامل ہے۔ AWS Lambda کی سب سے تفصیلی قیمت ہے۔138~139## حقیقی دنیا کے استعمال کے معاملات140~141### AWS Lambda: بہترین ہے اس کے لیے142~143- **پیچیدہ بیک اینڈ ورک فلوز** - step functions، ایونٹ پر مبنی آرکیٹیکچرز144- **AWS سروسز کے ساتھ انضمام** - S3 ٹرگرز، DynamoDB اسٹریمز، SQS قطاریں145- **طویل مدتی کام** - 15 منٹ تک کا عمل درآمد وقت146- **کثیر زبان ٹیمیں** - رن ٹائمز کی سب سے وسیع رینج کی حمایت147~148```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```157~158### Vercel Functions: بہترین ہے اس کے لیے159~160- **Next.js ایپلیکیشنز** - صفر کنفیگ API روٹس161- **فرنٹ اینڈ مرکوز ٹیمیں** - فرنٹ اینڈ اور بیک اینڈ ایک ساتھ ڈیپلائے کریں162- **تیز پروٹو ٹائپنگ** - git push سے ڈیپلائے163- **Jamstack آرکیٹیکچرز** - اسٹیٹک فرنٹ اینڈ + serverless API164~165```typescript166// app/api/subscribe/route.ts167import { NextResponse } from 'next/server';168~169export async function POST(request: Request) {170 const { email } = await request.json();171~172 // Validate173 if (!email || !email.includes('@')) {174 return NextResponse.json(175 { error: 'Invalid email' },176 { status: 400 }177 );178 }179~180 // Save to database181 await db.subscribers.create({ email });182~183 return NextResponse.json({ success: true });184}185```186~187### Cloudflare Workers: بہترین ہے اس کے لیے188~189- **کم تاخیر APIs** - کوڈ دنیا بھر میں 300+ مقامات پر چلتا ہے190- **ایج کمپیوٹنگ** - جوابات کی تبدیلی، A/B ٹیسٹنگ، ذاتی بنانا191- **زیادہ حجم APIs** - فراخدلانہ مفت درجے کے ساتھ بڑے پیمانے پر سب سے سستا192- **عالمی ایپلیکیشنز** - KV اور D1 کے ساتھ صارفین کے قریب ڈیٹا193~194```javascript195// Edge-side A/B test196export default {197 async fetch(request, env) {198 const url = new URL(request.url);199~200 // Assign user to variant201 const cookie = request.headers.get('Cookie') || '';202 let variant = cookie.includes('ab=b') ? 'b' : 'a';203~204 if (!cookie.includes('ab=')) {205 variant = Math.random() < 0.5 ? 'a' : 'b';206 }207~208 // Fetch the appropriate version209 const response = await fetch(`${url.origin}/variants/${variant}`);210 const newResponse = new Response(response.body, response);211~212 // Set cookie for consistent experience213 newResponse.headers.set('Set-Cookie', `ab=${variant}; Path=/; Max-Age=86400`);214~215 return newResponse;216 },217};218```219~220## کب کون سا منتخب کریں221~222### AWS Lambda منتخب کریں اگر:223- آپ پہلے سے AWS ایکو سسٹم میں سرمایہ کاری کر چکے ہیں224- آپ کو طویل مدتی فنکشنز کی ضرورت ہے (15 منٹ تک)225- آپ کو پیچیدہ ایونٹ پر مبنی آرکیٹیکچرز کی ضرورت ہے226- آپ کو JavaScript سے آگے رن ٹائمز کی ضرورت ہے (Python، Go، Rust، Java)227~228### Vercel Functions منتخب کریں اگر:229- آپ Next.js یا فرنٹ اینڈ فریم ورک کے ساتھ بنا رہے ہیں230- آپ سب سے آسان ڈیپلائے تجربہ چاہتے ہیں (git push)231- آپ کی ٹیم فرنٹ اینڈ مرکوز ہے232- آپ ایک پلیٹ فارم میں ہوسٹنگ + فنکشنز + CDN چاہتے ہیں233~234### Cloudflare Workers منتخب کریں اگر:235- آپ کو عالمی سطح پر کم سے کم ممکنہ تاخیر کی ضرورت ہے236- آپ بڑے پیمانے پر سب سے سستا آپشن چاہتے ہیں237- آپ کو ایج کمپیوٹنگ صلاحیتوں کی ضرورت ہے238- کولڈ اسٹارٹ وقت آپ کے استعمال کے معاملے کے لیے اہم ہے239~240## کیا آپ انہیں ملا سکتے ہیں؟241~242بالکل۔ ایک عام آرکیٹیکچر:243~244```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```252~253- **Cloudflare Workers**: ایج روٹنگ، کیشنگ، سیکیورٹی254- **Vercel Functions**: فرنٹ اینڈ API روٹس، SSR255- **AWS Lambda**: بھاری بیک اینڈ پروسیسنگ، شیڈولڈ ٹاسکس، ایونٹ پائپ لائنز256~257## نتیجہ258~259Serverless نمایاں طور پر پختہ ہو چکا ہے۔ 2026 میں، AWS Lambda، Vercel Functions اور Cloudflare Workers کے درمیان انتخاب آپ کے اسٹیک اور ترجیحات پر منحصر ہے:260~261- **سب سے آسان ڈویلپر تجربہ**: Vercel262- **سب سے طاقتور اور لچکدار**: AWS Lambda263- **بہترین کارکردگی اور قیمتیں**: Cloudflare Workers264~265تینوں پروڈکشن کے لیے تیار اور جنگ میں آزمودہ ہیں۔ اس سے شروع کریں جو آپ کے موجودہ اسٹیک کے مطابق ہو، اور اپنی ضروریات بڑھنے کے ساتھ پھیلائیں۔266~
NORMAL · serverless-aws-lambda-vercel-cloudflare.md [readonly]266 lines · :q to close