Edge Computing با Cloudflare Workers
اجرای کد JavaScript در سرورهای لبه کلودفلر - سریع، مقیاسپذیر و بدون سرور
مثال ساده Worker
Workers برای چه کارهایی؟
مثالهای واقعی از استفاده Workers در پروژههای مختلف
API Gateway
ایجاد API سریع برای اتصال Frontend به Backend، با قابلیت Authentication و Rate Limiting
Geo Routing
هدایت کاربران به سرور مناسب بر اساس موقعیت جغرافیایی یا زبان
Image Resizing
تغییر سایز تصاویر به صورت Real-time بر اساس دستگاه کاربر
Authentication
بررسی JWT Token، OAuth و کنترل دسترسی قبل از رسیدن به سرور اصلی
A/B Testing
تست نسخههای مختلف سایت روی درصدی از کاربران
Edge Caching
کش هوشمند دادهها در Edge با منطق سفارشی
مثال واقعی: API Gateway
Worker Code
مزایای این پیادهسازی
سرعت بالا
Authentication در Edge انجام میشود، نه در Backend
امنیت بیشتر
درخواستهای غیرمجاز قبل از رسیدن به Backend مسدود میشوند
کاهش بار Backend
فقط درخواستهای معتبر به Backend ارسال میشوند
مقیاسپذیری
به طور خودکار در ۳۰۰+ مرکز داده اجرا میشود
Workers Runtime
محیط اجرای Workers و قابلیتهای آن
V8 JavaScript Engine
Workers از همان موتور V8 استفاده میکند که در Chrome استفاده میشود، اما با محدودیتهای امنیتی.
پشتیبانی شده
- • ES6+ JavaScript
- • Fetch API
- • Web Streams
- • WebAssembly
- • Crypto API
پشتیبانی نشده
- • Node.js APIs
- • File System
- • Network Sockets
- • setTimeout/setInterval
عملکرد و محدودیتها
نکته: محدودیتها در طرحهای پولی بیشتر است
API های در دسترس
Fetch API
درخواست HTTP به سرورهای خارجی
fetch('https://api.example.com')Crypto API
رمزنگاری و Hash
crypto.subtle.digest()KV Storage
ذخیرهسازی Key-Value
KV.get('key')Cache API
کش سفارشی
caches.default.put()Analytics
آمار و لاگ
analytics.writeDataPoint()WebSockets
اتصال Real-time
new WebSocket()مثالهای عملی
پیادهسازی کاربردهای واقعی با Workers
مثال ۱: کوتاهکننده URL
Worker Code
نحوه کارکرد
۱. دریافت درخواست
کاربر لینک کوتاه را کلیک میکند
short.ly/abc123۲. جستجو در KV
Worker از KV Storage لینک اصلی را مییابد
abc123 → https://example.com/long-url۳. Redirect
کاربر به لینک اصلی هدایت میشود
301 Redirectمزیت: سرعت بالا (< 10ms) و مقیاسپذیری خودکار
مثال ۲: Image Proxy و Resize
Worker Code
کاربرد عملی
درخواست نمونه
/resize?url=image.jpg&w=300&h=200 نتیجه: ۷۰٪ کاهش حجم تصاویر و ۳ برابر سرعت بیشتر
توسعه و استقرار
راهنمای کامل توسعه و Deploy کردن Workers
نصب Wrangler CLI
Wrangler ابزار رسمی کلودفلر برای توسعه و Deploy کردن Workers است.
ایجاد پروژه جدید
پروژه Worker جدید ایجاد کنید و ساختار اولیه را تنظیم کنید.
توسعه محلی
Worker را به صورت محلی تست کنید قبل از Deploy.
wrangler.toml
دستورات مفید
wrangler devwrangler publishwrangler tailDeploy و مانیتورینگ
Worker را Deploy کرده و عملکرد آن را مانیتور کنید.
Deploy
مانیتورینگ
قیمتگذاری Workers
طرحهای مختلف برای نیازهای متفاوت
رایگان
- 100,000 درخواست/روز
- 10ms CPU time
- workers.dev subdomain
پولی
- 10 میلیون درخواست
- 50ms CPU time
- Custom domains
- Analytics & Logs
سازمانی
- درخواست نامحدود
- CPU time نامحدود
- SLA 99.9%
- پشتیبانی اختصاصی
آماده شروع با Workers؟
حالا که Workers را یاد گرفتید، میتوانید اولین Worker خود را بسازید یا با سایر خدمات آشنا شوید