【问题标题】:Resend failed request重新发送失败的请求
【发布时间】:2020-11-09 18:59:54
【问题描述】:

如何为这种情况配置 istio:

serviceentry 有 10 个外部 IP 地址。其中有两个坏了。

我已经配置了断路器,但不太确定如果在损坏的端点上失败,是否可以自动重新发送请求。或者它只是从连接池中删除这个端点,将失败返回给应用程序?

【问题讨论】:

    标签: java kubernetes microservices istio


    【解决方案1】:

    TrafficPolicy 下有两个与断路相关的字段:ConnectionPoolSettingsOutlierDetectionIn

    ConnectionPoolSettings,可以为服务配置连接量。

    OutlierDetection 用于控制从负载均衡池中驱逐不健康的服务。

    所以端点被移除,直到电路再次变为closed,服务将被允许再次处理请求。您不能重新发送请求,也不需要重新发送,因为在电路进入closed 状态的阈值之后,请求将自动发送到该服务。

    【讨论】:

    • 谢谢您的回复。您能否同意我的想法:如果我的应用程序向不健康的端点发送请求,该端点将被删除,但无论如何应用程序都会收到 503 错误?那么,是应用程序负责重试吗?我想相信,有一种方法可以让 istio 对应用程序透明地重试不健康 pod 上的失败请求
    • 可以通过创建虚拟服务istiobyexample.dev/retry在istio中配置重试
    猜你喜欢
    • 2012-02-11
    • 2015-08-31
    • 2015-12-08
    • 1970-01-01
    • 1970-01-01
    • 2020-04-06
    • 2016-02-22
    • 2013-12-26
    • 2019-05-09
    相关资源
    最近更新 更多