كيفية إصلاح 'خطأ R10 (مهلة التمهيد)' على Heroku؟



جرب أداة القضاء على المشاكل

Heroku هي خدمة قائمة على النظام الأساسي السحابي توفر للمستخدمين نظامًا أساسيًا لإدارة تشغيل التطبيقات وتطويرها دون الحاجة إلى إنشاء البنية التحتية وصيانتها. لقد تم تطويره منذ عام 2007 وهو يدعم الآن الكثير من اللغات. مؤخرًا ، وردت العديد من التقارير حول ' خطأ R10 (مهلة التمهيد) -> فشلت عملية الويب في الارتباط بـ $ PORT خلال 60 ثانية من الإطلاق 'خطأ.



خطأ R10 (مهلة التمهيد) -> فشلت عملية الويب في الارتباط بـ $ PORT خلال 60 ثانية من الإطلاق



في هذه المقالة ، سنناقش بعض الأسباب التي أدت إلى حدوث هذا الخطأ ونزودك أيضًا بحلول قابلة للتطبيق لإصلاحه تمامًا. ضع في اعتبارك اتباع التعليمات بعناية وبدقة لتجنب التعارض.



ما الذي يسبب 'خطأ R10 (مهلة التمهيد)' على Heroku؟

بعد تلقي العديد من التقارير من عدة مستخدمين ، قررنا التحقيق في المشكلة وابتكرنا مجموعة من الحلول لإصلاحها تمامًا. أيضًا ، نظرنا في الأسباب التي أدت إلى تشغيله وأدرجناها على النحو التالي.

  • الموعد: هناك حد زمني لمقدار الوقت الذي يستغرقه التطبيق لبدء التشغيل. عند خرق هذا الحد الزمني ، قد يتم تشغيل الخطأ. لذلك ، يجب تقليل بدء تشغيل التطبيق إلى حد زمني أقل من الحد الزمني أو لتمديد الحد الزمني.
  • Procfile غير صالح: في بعض الحالات ، قد تكون هناك مشكلة في Procfile حيث قد لا يتم تكوينه بشكل صحيح. إذا لم يتم تكوين ملف Procfile بشكل صحيح ، فقد يتم تشغيل هذا الخطأ.
  • تحميل الجواهر: قد يكون هناك عدد متزايد من الجواهر التي يتم تحميلها عند بدء تشغيل التطبيق. لذلك ، يجب أن تحدد عدد الجواهر بأقل ما يمكن عند بدء التشغيل. يمكن القيام بذلك دون التأثير على تحميل الجواهر.

الآن بعد أن أصبح لديك فهم أساسي لطبيعة المشكلة ، سننتقل إلى الحلول. تأكد من تنفيذها بالترتيب المحدد الذي تم سردها به لتجنب التعارض.

الحل 1: زيادة الحد الزمني

يمكن زيادة الحد الزمني لبدء تشغيل التطبيق. سنزيدها باستخدام ' هيروكو إلى الأمام 'والذي يحتوي أيضًا على التعليمات الخاصة بتحقيق هذا الحد الزمني الأعلى. تحميل هذه ملف يحتوي على جميع الملفات الهامة التي تحتاجها لزيادة الحد الزمني. ويتضمن أيضًا ملف المستند التمهيدي الذي يحتوي على الإرشادات الخاصة بتنفيذه.



الحل 2: تغيير إعدادات Procfile

في بعض الحالات ، قد يتم تشغيل المشكلة بسبب تكوين غير صالح مع 'Procfile'. لذلك ، في هذه الخطوة ، سنقوم بتغيير سطر في ملف Procfile. من أجل هذا:

  1. افتح ال Procfile .
  2. يجب أن يكون هناك سطر في ملف Procfile مشابه لما يلي.
    الويب: حزمة بداية رقيقة exec
  3. قم بتغيير هذا الخط إلى التالي.
    الويب: bundle exec thin start -p $ PORT
  4. احفظ التغييرات و التحقق من لمعرفة ما إذا كانت المشكلة قائمة.

الحل 3: قص الجواهر عند بدء التشغيل

من الممكن أن يتم تحميل جواهر إضافية عند بدء تشغيل التطبيق. لذلك ، في هذه الخطوة ، سوف نحدد ونقص الأحجار الكريمة الإضافية عند بدء التشغيل. من أجل هذا:

  1. تحميل هذه ملف وقراءة التعليمات لتحديد الأحجار الكريمة الإضافية التي يتم تحميلها عند بدء التشغيل.
  2. أضف السطر التالي إلى الجواهر هذا هو إضافي ولا تحتاج إلى التحميل عند بدء التشغيل.
    تتطلب => خطأ
  3. هذا سيمنع هذا الجوهرة من الوجود محمل عند بدء التشغيل.
  4. التحقق من لمعرفة ما إذا كانت المشكلة قائمة.
2 دقيقة للقراءة