Mở rộng câu trả lời của chrskly, bạn có thể muốn định cấu hình 3 cờ / cấu hình.
- fail_timeout : Tổng thời gian bằng các lần thử thất bại và cũng đánh dấu máy chủ là XUỐNG cùng thời điểm đó. Nếu 5 giây, sau đó sẽ thử các lần thử max_fail trong 5 giây và nếu vẫn không thành công, hãy đánh dấu máy chủ đó là DOWN trong 5 giây.
- max_fail : Số lần thử tối đa
- proxy_connect_timeout : Lượng thời gian chờ kết nối.
Trong ví dụ GRPC sau, nếu máy chủ chính không thể được kết nối trong 7 giây, thì hãy chuyển sang sao lưu và đánh dấu máy chủ chính xuống dưới 6000 giây:
upstream grpcservers {
server 192.168.0.XX:9997 fail_timeout=6000s max_fails=1; # After 1 fail in 6000s, Main server is marked unavailable for 6000s.
server 192.168.0.XX:9999 backup;
}
location / {
grpc_pass grpc://grpcservers;
grpc_connect_timeout 7s; # If conn cant be made in 7sec, switch to backup
}