ฉันได้กำหนดค่า nginx ให้ทำโหลดบาลานซ์ Round Robin พื้นฐานระหว่างเซิร์ฟเวอร์อัปสตรีม
การรับส่งข้อมูลถูกกระจายอย่างเท่าเทียมกันระหว่างเซิร์ฟเวอร์อัพสตรีม ฉันคาดว่าการโหลดจะสมดุลหลังจากทุกคำขอ แต่จะมีความสมดุลในทุก ๆ คำขอที่สอง (โหลดบาลานเซอร์ให้บริการคำขอ HTTP 2 รายการแรกไปยังเซิร์ฟเวอร์แรก คำขอ HTTP 2 รายการต่อไปนี้ได้รับ ไปยังเซิร์ฟเวอร์ที่สอง เป็นต้น) ฉันได้ลองใช้การถ่วงน้ำหนักโหลดบาลานซ์ด้วยน้ำหนักที่เท่ากันบนเซิร์ฟเวอร์อัปสตรีมและลักษณะการทำงานยังคงเหมือนเดิม
การกำหนดค่าโหลดบาลานเซอร์:
###################### คำสั่งอัพสตรีม ######################
แบ็กเอนด์ต้นน้ำ {
เซิร์ฟเวอร์ ecslb.bknd-srv-one.com:10000;
เซิร์ฟเวอร์ ecslb.bknd-srv-two.com:10000;
เซิร์ฟเวอร์ ecslb.bknd-srv-three.com:10000;
}
###################### คำสั่งเซิร์ฟเวอร์ ######################
เซิร์ฟเวอร์ {
ฟัง 10,000;
server_name research-complex.com;
ที่ตั้ง / {
proxy_pass http://แบ็กเอนด์;
}
}
การกำหนดค่าโหลดบาลานเซอร์ถูกโหลดโดย nginx.conf ซึ่งปล่อยให้เป็นค่าเริ่มต้น มีการเพิ่มตัวแก้ไขเท่านั้น
ความคิดใดที่อาจเป็นสาเหตุของสิ่งนี้