Skip to main content
副本感知路由 (也称为 sticky sessions、sticky routing 或 session affinity) 利用了 Envoy 代理的 ring hash 负载均衡。副本感知路由的主要目的是提高缓存复用的概率。它并不能保证隔离性。 为某个服务启用副本感知路由时,我们会在该服务的主机名上额外允许一个通配符子域名。对于主机名为 abcxyz123.us-west-2.aws.clickhouse.cloud 的服务,你可以使用任何匹配 *.sticky.abcxyz123.us-west-2.aws.clickhouse.cloud 的主机名来访问该服务: 当 Envoy 收到符合此类模式的主机名时,它会根据该主机名计算路由哈希,并依据计算出的哈希在哈希环上找到对应的 ClickHouse 服务器。假设该服务没有发生正在进行中的变更 (例如服务器重启、扩容或缩容) ,Envoy 将始终选择连接到同一台 ClickHouse 服务器。 请注意,原始主机名仍会使用 LEAST_CONNECTION 负载均衡,这也是默认的路由算法。

副本感知路由的局限性

副本感知路由 不保证隔离

服务一旦发生任何变动,例如 server pod (容器组) 重启 (原因可能包括版本升级、崩溃、垂直扩缩容等) ,或 server 扩容 / 缩容,都会扰动路由哈希环。这会导致具有相同主机名的连接落到不同的 server pod (容器组) 上。 客户需要手动添加一条 DNS 记录,才能让新的主机名模式正常解析。如果配置不当,可能会导致服务器负载不均衡。

配置 副本感知路由

如需启用 副本感知路由,请联系我们的支持团队
最后修改于 2026年6月12日