Heroku เป็นบริการบนแพลตฟอร์มคลาวด์ที่ให้ผู้ใช้มีแพลตฟอร์มในการจัดการการรันและพัฒนาแอพพลิเคชั่นโดยไม่ต้องสร้างและบำรุงรักษาโครงสร้างพื้นฐาน ได้รับการพัฒนาตั้งแต่ปี 2550 และตอนนี้รองรับหลายภาษา ไม่นานมานี้มีรายงานมากมายเกี่ยวกับ“ ข้อผิดพลาด R10 (หมดเวลาการบูต) -> กระบวนการเว็บล้มเหลวในการผูกกับ $ PORT ภายใน 60 วินาทีของการเปิดตัว 'ข้อผิดพลาด
ข้อผิดพลาด R10 (หมดเวลาการบูต) -> กระบวนการเว็บล้มเหลวในการผูกกับ $ PORT ภายใน 60 วินาทีของการเปิดตัว
ในบทความนี้เราจะพูดถึงสาเหตุบางประการที่ทำให้เกิดข้อผิดพลาดนี้และยังมีวิธีแก้ไขที่เป็นไปได้เพื่อแก้ไขให้สมบูรณ์ โปรดปฏิบัติตามคำแนะนำอย่างระมัดระวังและถูกต้องเพื่อหลีกเลี่ยงความขัดแย้ง
อะไรทำให้เกิด“ Error R10 (Boot Timeout)” ใน Heroku?
หลังจากได้รับรายงานจำนวนมากจากผู้ใช้หลายคนเราจึงตัดสินใจที่จะตรวจสอบปัญหาและคิดหาวิธีแก้ไขปัญหาอย่างสมบูรณ์ นอกจากนี้เรายังตรวจสอบสาเหตุที่ทำให้เกิดและระบุไว้ดังต่อไปนี้
- เวลาที่ จำกัด: มีการ จำกัด ระยะเวลาสำหรับระยะเวลาที่แอปพลิเคชันใช้ในการเริ่มต้น เมื่อมีการละเมิดขีด จำกัด เวลานี้ข้อผิดพลาดอาจเกิดขึ้น ดังนั้นการเริ่มต้นแอปพลิเคชันจะต้องลดระยะเวลาให้ต่ำกว่าเวลาที่กำหนดหรือเพื่อขยายระยะเวลา
- Procfile ไม่ถูกต้อง: ในบางกรณีอาจมีปัญหากับ Procfile ซึ่งอาจไม่ได้รับการกำหนดค่าอย่างเหมาะสม หากไม่ได้กำหนดค่า Procfile อย่างเหมาะสมข้อผิดพลาดนี้อาจเกิดขึ้น
- กำลังโหลดอัญมณี: อาจมีการโหลดอัญมณีเพิ่มขึ้นเมื่อเริ่มต้นแอปพลิเคชัน ดังนั้นคุณต้อง จำกัด จำนวนอัญมณีให้ต่ำที่สุดเมื่อเริ่มต้น สามารถทำได้โดยไม่ส่งผลกระทบต่อการโหลดอัญมณี
เมื่อคุณมีความเข้าใจพื้นฐานเกี่ยวกับลักษณะของปัญหาแล้วเราจะดำเนินการแก้ไขต่อไป ตรวจสอบให้แน่ใจว่าได้ใช้สิ่งเหล่านี้ตามลำดับที่ระบุไว้เพื่อหลีกเลี่ยงความขัดแย้ง
โซลูชันที่ 1: เพิ่มเวลา จำกัด
สามารถเพิ่มระยะเวลาในการบูตแอปพลิเคชันได้ เราจะเพิ่มมันโดยใช้ ' Heroku ส่งต่อ ” ซึ่งมีคำแนะนำในการบรรลุระยะเวลาที่สูงขึ้นนี้ด้วย ดาวน์โหลด นี้ ไฟล์ที่มีไฟล์สำคัญทั้งหมดที่คุณต้องการเพื่อเพิ่มระยะเวลา นอกจากนี้ยังมีไฟล์ Readme ที่มีคำแนะนำในการใช้งาน
โซลูชันที่ 2: การเปลี่ยนการตั้งค่า Procfile
ในบางกรณีปัญหาอาจเกิดขึ้นเนื่องจากการกำหนดค่าที่ไม่ถูกต้องกับ 'Procfile' ดังนั้นในขั้นตอนนี้เราจะเปลี่ยนบรรทัดใน Procfile สำหรับการที่:
- เปิด Procfile .
- ควรมีบรรทัดใน Procfile คล้ายกับบรรทัดต่อไปนี้
เว็บ: บันเดิล exec thin start
- เปลี่ยนบรรทัดนี้เป็นบรรทัดต่อไปนี้
เว็บ: บันเดิล exec thin start -p $ PORT
- บันทึกการเปลี่ยนแปลงของคุณและ ตรวจสอบ เพื่อดูว่าปัญหายังคงมีอยู่หรือไม่
โซลูชันที่ 3: การตัดแต่งอัญมณีเมื่อเริ่มต้น
เป็นไปได้ว่าจะมีการโหลดอัญมณีพิเศษเมื่อเริ่มต้นแอปพลิเคชัน ดังนั้นในขั้นตอนนี้เราจะระบุและตัดแต่งอัญมณีพิเศษเมื่อเริ่มต้น สำหรับการที่:
- ดาวน์โหลด นี้ ไฟล์และอ่านคำแนะนำเพื่อระบุ Gems พิเศษที่โหลดเมื่อเริ่มต้น
- เพิ่ม บรรทัดต่อไปนี้ไปยังไฟล์ อัญมณี นั้นคือ พิเศษ และไม่จำเป็นต้องโหลดเมื่อเริ่มต้น
ต้องการ => เท็จ
- สิ่งนี้จะป้องกันไม่ให้อัญมณีนั้นเป็น โหลดแล้ว เมื่อเริ่มต้น
- ตรวจสอบ เพื่อดูว่าปัญหายังคงมีอยู่หรือไม่