تطلق Vercel Vercel Services—نشر موحد للواجهة الأمامية والخلفية في مشروع واحد
قدمت Vercel Vercel Services—طريقة لتشغيل أطر عمل متعددة في Vercel Project واحد. على سبيل المثال، يمكن الآن دمج frontend Next.js و backend FastAPI: يتم نشرهما والتراجع عنهما معاً، يحصلان على نشر معاينة مشترك، ويمكنهما التواصل مباشرة مع بعضهما، متجاوزين الإنترنت العام، من خلال تكوين service bindings جديد في vercel.json.
معالج بواسطة الذكاء الاصطناعي من Vercel Blog؛ بتحرير Hamidun News
قدمت Vercel قدرة جديدة تسمى Vercel Services، والتي تسمح بتشغيل أطر عمل متعددة — على سبيل المثال، واجهة أمامية Next.js وواجهة خلفية FastAPI — في مشروع Vercel واحد مع نشر مشترك وشبكات داخلية بين الخدمات.
كيفية تكوين Vercel Services
يتم وصف الخدمات في ملف vercel.json تحت مفتاح "services": لكل خدمة، تحدد المسار (root) والإطار أو نقطة الدخول (entrypoint)، ويتم تكوين توجيه حركة المرور العامة عبر rewrites. يمكن توجيه حركة المرور العامة فقط إلى خدمة الواجهة الأمامية، مما يترك الواجهة الخلفية يمكن الوصول إليها حصرياً من داخل المشروع.
- تكوين الخدمات — عبر مفتاح "services" في vercel.json
- مثال من توثيق Vercel: خدمة my_frontend على Next.js وخدمة my_backend على FastAPI (entrypoint main:app)
- الواجهة الخلفية في المثال ليس لديها مسار عام — يمكن الوصول إليها فقط لخدمة my_frontend من خلال الشبكة الداخلية
- لوحة Deployments توضح تصور رسم بياني للخدمات، وتسمح واجهة Logs بتصفية السجلات حسب الخدمة الفردية
- تأمر vercel dev تبدأ تلقائياً جميع الخدمات محلياً، مما يكرر بيئة الإنتاج
ما هي المشكلة التي يحلها دمج الخدمات
سابقاً، كان على الفرق التي دمجت واجهة أمامية JavaScript و، على سبيل المثال، واجهة خلفية Python في منتج واحد عادةً أن تقسمها عبر منصات سحابية مختلفة: كانت Vercel قوية تاريخياً في نشر الواجهة الأمامية بناءً على Next.js، بينما كانت خدمات الواجهة الخلفية على FastAPI أو Django أو Flask عادةً تذهب إلى منصات استضافة منفصلة. في الممارسة العملية، كان هذا يعني نظامي CI/CD مستقلين، مجموعتي سجلات ومراقبة، ومزامنة يدوية لإصدارات الواجهة الأمامية والخلفية مع كل إصدار. Vercel Services يغلق هذه الفجوة: يتم وصف تكوين أطر عمل وخدمات كاملة متعددة في ملف vercel.json واحد، بدلاً من تجميعها يدويًا من إعدادات منصات مختلفة.
ما الذي توفره النشر الذري وخدمة service bindings
يضمن النشر الذري أن الواجهة الأمامية والواجهة الخلفية والخدمات الأخرى في المشروع تتم نشرها والتراجع عنها بشكل متزامن، وليس بشكل منفصل. تبين نشر المعاينة المشترك كيف يؤثر تغيير واحد على جميع الخدمات دفعة واحدة. يسمح تكوين bindings منفصل للخدمات باستدعاء بعضها البعض مباشرة، متجاوزاً الإنترنت العام: على سبيل المثال، يتم تمرير المفتاح BACKEND_INTERNAL_URL تلقائياً إلى متغيرات البيئة للواجهة الأمامية ويشير إلى العنوان الداخلي للواجهة الخلفية.
ماذا يعني هذا
يغلق Vercel Services فجوة طويلة الأمد بين أجزاء الواجهة الأمامية والخلفية من منتج واحد، التي كانت تعيش سابقاً غالباً في سحابات مختلفة مع عمليات التطوير والنشر الخاصة بها. بالنسبة للفرق التي تدمج واجهة أمامية JavaScript و، على سبيل المثال، واجهة خلفية Python على FastAPI، يعني هذا نشراً موحداً وتدفق معاينة مشترك واتصال داخلي مباشر بين الخدمات بدون وكلاء عكسيين وتكوين CORS. بالنسبة للمنصة، هذا هو أيضاً طريقة للاحتفاظ في نظامها البيئي بالفرق التي غادرت سابقاً مع جزء الواجهة الخلفية من المشروع إلى استضافة الطرف الثالث ببساطة لأن Vercel لم تقدم طريقة مريحة للاحتفاظ بكامل المكدس في مكان واحد.
أسئلة متكررة
ما هو Vercel Services؟
إنها قدرة Vercel لتشغيل خدمات متعددة — على سبيل المثال، واجهة أمامية Next.js وواجهة خلفية FastAPI — داخل مشروع Vercel واحد مع توجيه مشترك ونشر ذري وتوسع تلقائي؛ يتم تحديد التكوين في vercel.json تحت مفتاح "services".
هل تحتاج الخدمات إلى وكيل عكسي للتواصل مع بعضها البعض؟
لا. وفقاً لتوثيق Vercel، يمكن توصيل الخدمات بجدول توجيه مشترك وتكوين تفاعلهما عبر bindings بدون وكيل عكسي وبدون تكوين CORS.
هل تحتاج إلى ذكاء اصطناعي يعمل داخل شركتك — وليس فقط في موجز الأخبار؟
أبني ذكاءً اصطناعياً جاهزاً للإنتاج للشركات — أنظمة CRM مخصّصة، أدوات داخلية، وكلاء مستقلون، أتمتة سير العمل. ملك لك، مصمّم وفق عمليتك، دون رسوم لكل مستخدم. من إعداد جمال خميدون، مدير المنتجات في AlpinaGPT (منصة ذكاء اصطناعي، أكثر من 6000 مستخدم).
أهم ما في عالم الذكاء الاصطناعي — مرة كل أسبوع
سبع قصص مهمة فعلاً هذا الأسبوع، مختارة بعناية. بلا ضجيج ولا بيانات صحفية.
تم! تحقق من بريدك للتأكيد.