2

ロード バランシング中に Zone Affinity を実現したいと考えています。ログでは、「DynamicServerListLoadBalancer」が使用されていることがわかります。動作によると、ラウンド ロビン ルールがアクティブになっているようです。

オーバーライドするカスタム構成を作成しましRibbonClientConfigurationたが、機能しません。これは正しいです?

public class CustomConfiguration {

    @Autowired
    private IClientConfig config;

    @Autowired
    ServerListFilter<Server> filter;

    @Bean
    public ILoadBalancer ribbonLoadBalancer(IClientConfig config,
            ServerListFilter<Server> filter) {
        ZoneAwareLoadBalancer<Server> balancer = new ZoneAwareLoadBalancer<>(config);
        balancer.setFilter(filter);
        return balancer;
    }

    @Bean
    public ServerListFilter<Server> ribbonServerListFilter(IClientConfig config) {
        ZonePreferenceServerListFilter filter = new ZonePreferenceServerListFilter();
        filter.initWithNiwsConfig(config);
        return filter;
    }
}

@Configuration
@RibbonClient(name = "custom", configuration = CustomConfiguration.class)
public class CustomApplicationConfiguration {
}
4

0 に答える 0