【问题标题】:GCE: How do you get the load balancer(s) to refuse excessive traffic?GCE:你如何让负载均衡器拒绝过多的流量?
【发布时间】:2018-10-04 08:39:09
【问题描述】:

我正在尝试在 GCE(计算引擎)上运行第三方服务器软件。它使用 HTTP 和/或 HTTPS,在一个托管实例组中运行并从 Appengine 获取流量。

如果每个实例收到太多请求,此特定程序的行为会非常糟糕。因此,如果负载太大,我希望负载均衡器拒绝请求。但我无法让我测试过的任何一个表现出这种行为。无论我设置什么“平衡模式”,它似乎总是将请求分配给我组中的健康实例。这会导致每个实例在峰值下(在自动缩放开始之前)的请求过多,并意味着所有请求都会失败。

有没有办法让负载平衡器拒绝过多的流量?例如立即返回 HTTP 错误?

【问题讨论】:

    标签: google-cloud-platform google-compute-engine google-cloud-networking


    【解决方案1】:

    您正在寻找负载均衡器无法实现的功能,但您或许可以在云盔甲中找到您想要的功能:https://cloud.google.com/armor/

    一些选项仍处于 Beta/Alpha 阶段,并且仍在不断发展。

    如果这仍然不够好,您将别无选择,应该创建一个 tcp LB 来将流量引导到 HAproxy 之类的其他东西,以执行您想要的操作。

    【讨论】:

      【解决方案2】:

      我认为您实际上应该看看 Apigee。尖峰逮捕政策处理您的用例。 https://docs.apigee.com/api-platform/reference/policies/spike-arrest-policy

      如果您对价格更敏感,请查看云端点节流。 https://cloud.google.com/service-infrastructure/docs/rate-limiting

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-03-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-13
        • 1970-01-01
        • 1970-01-01
        • 2021-12-07
        相关资源
        最近更新 更多