FUNCTION_INVOCATION_TIMEOUT ترجمتها «انتهت مهلة تشغيل الدالة». معناها: دالة السيرفر اللي تخدم الطلب في Vercel ما ردّت قبل ما تخلص مهلتها، فأوقفها Vercel ورجّع للمتصفح خطأ 504. السيرفر ما تعطّل. شي داخل الطلب أخذ وقت أطول من المسموح، أو الدالة ما ترد أبد.
الترجمة كلمة بكلمة
| الرسالة | الترجمة | إيش تعني |
|---|---|---|
FUNCTION | دالة | كود السيرفر اللي يشتغل لكل طلب في Vercel |
INVOCATION | استدعاء، تشغيل | المرة الوحدة اللي تشتغل فيها الدالة لطلب واحد |
TIMEOUT | انتهاء المهلة | الدالة تجاوزت الحد الأقصى لمدة التشغيل |
504 Gateway Timeout | انتهت مهلة البوابة | الرقم اللي يوصل المتصفح مع هالخطأ |
maxDuration | المدة القصوى | إعداد يحدد كم ثانية تقدر تشتغل الدالة |
وين تشوفها، وليش ما تطلع بالعربي
تشوفها في رد الطلب اللي رجع 504 (تبويب Network في F12)، أو في سجلات المشروع في لوحة Vercel. صفحات Vercel وسجلاته بالإنجليزي، فما تطلع بالعربي حتى لو لغة جهازك عربي.
مشكلتك ولا مشكلة الموقع؟
- إذا أنت زائر: المشكلة في الموقع، مو عندك. الطلب يعلّق شوي ثم يفشل. جرّب بعد شوي، أو بطلب أصغر لو كنت ترفع ملف أو تطلب نص طويل.
- إذا الموقع موقعك: المشكلة في دالة معيّنة داخل منتجك. افتح Network وشوف أي طلب رجع 504، وعمود Time يقول لك كم ثانية انتظر. بعدها فلتر سجلات Vercel على نفس المسار.
علامة سريعة: إذا يصير مع نص طويل من الذكاء الاصطناعي أو ملف كبير فقط، السبب غالبًا شغل ثقيل داخل الطلب. وإذا يصير حتى مع طلب صغير، دوّر على دالة ما ترجّع رد، أو قاعدة بيانات بعيدة عن منطقة الدالة.
إيش تكتب لـ Lovable أو Bolt أو Cursor
أدوات الذكاء الاصطناعي غالبًا تقترح ترفع maxDuration لأعلى رقم، أو ترقّي الخطة. هذا يخفي العرض: المستخدم ينتظر أطول، وتدفع أكثر، والسبب باقي. انسخ هذا مع سطور السجل:
A request to <path> on Vercel returns 504 with FUNCTION_INVOCATION_TIMEOUT.
In the Network tab it waits <seconds> seconds. The Vercel log for it says: <paste>.
Find what takes the time inside this function: a long AI call, heavy work like PDFs or
bulk emails, a far-away database, or a code path that never returns a response.
Do not raise maxDuration or suggest a plan upgrade until the cause is found.الحل خطوة بخطوة
حدود المهلة في كل خطة، والأسباب الأشهر، وكيف تنقل الشغل الثقيل للخلفية، في درس FUNCTION_INVOCATION_TIMEOUT في Vercel: ليش تنتهي المهلة؟. وللفرق بين 504 وأخواتها، شوف معنى 502 Bad Gateway.
وإذا عرفت الطلب اللي يعلّق وتبي ينصلح كامل وينتقل الشغل الثقيل للخلفية، فيه حل مشاكل تطبيقك.