مستوى المقال: مبتدئ — يكفي إنك تعرف JavaScript على المستوى الأساسي. مفيش حاجة اسمها سيرفر تدفع فيه شهرياً، ومفيش containers ولا Kubernetes في الموضوع ده.
لو بتدفع $35 شهرياً لـ Bitly عشان links مختصرة، تقدر تبني نفس الخدمة في 60 سطر TypeScript على Cloudflare Workers و KV بصفر تكلفة لحد 100,000 طلب يومياً. هتمشي على 10 خطوات قابلة للنسخ، شغّالة من أول مرة، وفي الآخر تبقى عندك دومين زي x.example.com/aB3xK9 بيحوّل لأي link طويل في 28 ميلي ثانية.
اعمل URL Shortener بـ Cloudflare Workers و KV من الصفر
المشكلة باختصار
الـ link الطويل بتاع تتبع حملة إعلانية ممكن يوصل 240 حرف. لو حطّيته في تويتر أو SMS بياكلك مكان، وبيخلّي نسبة الضغط تنزل. خدمة زي Bitly بتدفع فيها $35 شهرياً لـ 1,500 link، و$199 شهرياً لـ 10,000 link. للمشاريع الشخصية والشركات الصغيرة، التمن ده مش مبرر.
Cloudflare Workers بيدّيك 100,000 طلب يومياً مجاناً، و KV بيدّيك 100,000 قراءة و 1,000 كتابة يومياً مجاناً. ده كفاية لـ URL shortener شخصي أو لشركة بحجم 30,000 زيارة يومياً، بدون فاتورة شهرية.
مثال للمبتدئ: تخيّل مكتب التاكسيات
تخيّل إنك بدل ما تأجّر مكتب كامل (سيرفر) وموظف قاعد فيه 24 ساعة سواء جالك عميل ولا لأ، إنت بس بتدفع للمكتب اللي بياخد الطلبات لمّا الجرس يرنّ. لمّا حد يطلب تاكسي، الموظف يردّ، ويوصّل الطلب، ويخلّص. مفيش راتب شهري ثابت لموظف فاضي.
Cloudflare Worker بالظبط الشكل ده: سكربت TypeScript بيشتغل بس لمّا يجيله request، بيـ scale تلقائياً من 0 لـ 10,000 طلب/ثانية، وبتدفع لمّا حد يستخدمه فعلاً. KV هو كشكول مكتب التاكسيات: مفتاح (الـ slug القصير) → قيمة (الـ link الطويل).
التعريف العلمي بدقة
تقنياً، Cloudflare Worker هو سكربت JavaScript أو TypeScript بيشتغل على V8 Isolate في 330+ data center حوالين العالم. الـ Isolate ده مش container ولا VM — هو sandbox خفيف داخل عملية V8 واحدة، بيبدأ شغل في أقل من 5 ميلي ثانية (cold start)، مقارنة بـ AWS Lambda اللي بتاخد 200ms على الأقل. KV (Key-Value store) هو eventually-consistent distributed storage بيخزّن البيانات في 60+ data center، بقراءة P95 أقل من 10ms من قريب أقرب موقع للزائر.
الخطوات العملية — اتبعها بالترتيب
- اعمل حساب Cloudflare على
dash.cloudflare.com. مجاني، مفيش credit card مطلوب لحد ما تتعدّى الـ free tier. - ثبّت Wrangler CLI (أداة Cloudflare الرسمية لإدارة Workers):
الأمر التاني هيفتحلك صفحة في المتصفح علشان توافق على ربط CLI بحسابك.
npm install -g wrangler wrangler login