限制 API 服务调用的速率可确保高负载期间的操作更可靠并减少孤立对象的发生率。
如果客户端超出速率限制,则会收到 429 请求太多 HTTP 响应。响应中的 Retry-After
标头指示客户端执行进一步调用之前必须等待的时长。
您可以启用按服务进行速率限制。例如,您可能希望对 Nova API 服务调用执行比对 Neutron API 服务调用更为严格的限制。
过程
限制 Neutron 公共 API 调用
以下配置限制 Neutron 公共 API 调用。如果单个源 IP 地址在 10 秒内向 Neutron 公共 API 发送的请求超过 50 个,则负载平衡器将在持续 60 秒的时间内针对该源地址发送的所有后续请求返回 HTTP 429 错误。60 秒过后,源地址可以继续向 Neutron 公共 API 发送请求。
haproxy_throttle_period: 60 haproxy_neutron_max_requests: 50 haproxy_neutron_request_period: 10