GCE:如何让负载均衡器拒绝过多的流量?
GCE: How do you get the load balancer(s) to refuse excessive traffic?
我正在尝试 运行 GCE(计算引擎)上的第三方服务器软件。它在一个托管实例组中使用 HTTP and/or HTTPS、运行s 并从 Appengine 获取流量。
如果每个实例收到太多请求,此特定程序的行为会非常糟糕。因此,如果负载太大,我希望负载均衡器拒绝请求。但是我无法让我测试过的任何人以这种方式行事。无论我设置 "Balancing Mode" 什么,它似乎总是将请求分发到我组中的健康实例。这会导致每个实例在峰值下(在自动缩放开始之前)请求太多,并且意味着所有请求都会失败。
有没有办法让任何负载均衡器拒绝过多的流量?例如 return 立即出现 HTTP 错误?
您正在寻找负载均衡器无法实现的功能,但您或许可以在 Cloud Armor 中找到您想要的功能:https://cloud.google.com/armor/
一些选项仍在 Beta/Alpha 中,并且仍在不断发展。
如果这仍然不够好,您别无选择,应该创建一个 tcp LB 将流量定向到其他东西,例如 HAproxy 来做您想要的。
我认为您实际上应该看看 Apigee。尖峰逮捕政策处理您的用例。
https://docs.apigee.com/api-platform/reference/policies/spike-arrest-policy
如果您对价格更敏感,请查看云端点节流。
https://cloud.google.com/service-infrastructure/docs/rate-limiting
我正在尝试 运行 GCE(计算引擎)上的第三方服务器软件。它在一个托管实例组中使用 HTTP and/or HTTPS、运行s 并从 Appengine 获取流量。
如果每个实例收到太多请求,此特定程序的行为会非常糟糕。因此,如果负载太大,我希望负载均衡器拒绝请求。但是我无法让我测试过的任何人以这种方式行事。无论我设置 "Balancing Mode" 什么,它似乎总是将请求分发到我组中的健康实例。这会导致每个实例在峰值下(在自动缩放开始之前)请求太多,并且意味着所有请求都会失败。
有没有办法让任何负载均衡器拒绝过多的流量?例如 return 立即出现 HTTP 错误?
您正在寻找负载均衡器无法实现的功能,但您或许可以在 Cloud Armor 中找到您想要的功能:https://cloud.google.com/armor/
一些选项仍在 Beta/Alpha 中,并且仍在不断发展。
如果这仍然不够好,您别无选择,应该创建一个 tcp LB 将流量定向到其他东西,例如 HAproxy 来做您想要的。
我认为您实际上应该看看 Apigee。尖峰逮捕政策处理您的用例。 https://docs.apigee.com/api-platform/reference/policies/spike-arrest-policy
如果您对价格更敏感,请查看云端点节流。 https://cloud.google.com/service-infrastructure/docs/rate-limiting