ขอบคุณที่อ่าน :)
นี่เป็นปัญหาที่ยากมากและต้องการรับความคิดเห็นหรือข้อเสนอแนะเพื่อแก้ไขปัญหานี้
ปัญหา: แอปพลิเคชันในการเข้าสู่ระบบของผู้ใช้เริ่มต้น ~20 คำขอ API ในแบบคู่ขนานคำขอแรกจะทำการจับมือ SSL จากนั้นประมาณคำขอที่ 10 ถึง 13 ฉันเห็นคำขอสองรายการที่เริ่มต้นการจับมือ SSL พร้อมกัน โดยที่การจับมือแต่ละครั้งติดขัดและใช้เวลานานกว่า 25 วินาทีในการทำซ้ำ ปัญหาปรากฏสำหรับผู้ใช้ในการเข้าสู่ระบบ 30 วินาที
ติดตั้ง: ฉันมีการตั้งค่าด้วยตัวโหลดบาลานเซอร์ที่ใช้ฮาร์ดแวร์และโหนด nginx ประมาณ 8 โหนดที่ย้อนกลับพร็อกซีสำหรับแอปพลิเคชันจาวาที่ทำงานบนโหนดเดียวกัน FE เป็น SPA และการรับส่งข้อมูลทั้งหมดที่ไหลผ่าน nginx เป็นเนื้อหาแบบไดนามิก
รายละเอียดเพิ่มเติม
- การปรับแต่ง Keepalive จาก 65 วินาทีเป็น 10 วินาทีจะลดเวลาจับมือ SSL ทั้งหมดจาก >30 วินาที (ซึ่งเป็นเวลาหมดเวลา FE) เป็น 25 วินาที ดังนั้นปัญหานี้จึงเกี่ยวข้องกับ Keepalive ไม่ทางใดก็ทางหนึ่ง
- ปัญหานี้พบเฉพาะใน FF และตอนนี้แพร่กระจายไปยัง Safari
- อัปเกรด nginx เป็น LTS ล่าสุด
- ตัวจัดสรรภาระงานกำลังกระจายคำขอแบบวนรอบ
- บันทึกของ Nginx ไม่มีการกล่าวถึงปัญหาใดๆ
- มีการเรียงลำดับคำขอ API และมักจะส่งผลต่อ 2 ใน 3 คำขอเดียวกัน