如何对通过 HAProxy 速率限制会话的请求立即返回响应

如何对通过 HAProxy 速率限制会话的请求立即返回响应

对于超出速率限制会话的请求,如何立即返回特定的 HTTP 响应,而不是请求被阻止并进入积压状态?

我目前的设置如下:

frontend badtest
  bind 127.0.0.1:8811
  acl is_bad path_reg -i ^\/services\/1.0\/test\/.+\/bad
  use_backend throttle_bad if is_bad
  default_backend servers_bend

backend throttle_bad
  server throttleBAD 127.0.0.1:8812

frontend throttle_bad_backend
  bind 127.0.0.1:8812
  rate-limit sessions 45
  acl too_fast fe_sess_rate ge 45
  use_backend er_toofast if too_fast
  default_backend servers_bend

backend er_toofast
  errorfile 503 /var/lib/haproxy/503.http

使用上述设置,我看到状态为 FULLthrottle_bad_backend当请求过多时。

那么 status = FULL 是什么意思?

相关内容