Netflix 功能区(通过 Spring Cloud)- 如何将节点标记为强制关闭?

Netflix Ribbon (via Spring Cloud) - How to mark a node down forced?

是否可以通过 Spring 云使用 Ribbon 客户端负载平衡将节点标记为关闭?

我查看了配置选项,看看是否有任何接口方法可以将节点标记为关闭。

在 Ribbon 中有多种方法可以做到这一点。参见 https://github.com/Netflix/ribbon/wiki/Working-with-load-balancers#components-of-load-balancer

IPing 接口确定节点的活跃度或 ServerListFilter 接口从 ServerList.

过滤服务器

myservice 添加自定义 IPing 实现(reference)。

@Configuration
@RibbonClient(name = "myservice", configuration = CustomConfiguration.class)
public class MyAppConfiguration {
}

CustomConfiguration

protected static class CustomConfiguration {

    @Bean
    public IPing ribbonPing() {
        return new CustomPingImpl();
    }
}

有关所有服务的默认值,请参阅 here