同可用区(Availability Zones)优先路由,是指在应用调用服务时,优先调用同机房的服务Provider。同可用区优先是一种负载均衡策略,能够使流量在同一个可用区内流转,不仅限于使用默认提供的轮询方式进行负载均衡。本文介绍同可用区优先的使用限制和使用场景,以及如何在MSE配置同可用区优先。
前提条件
- 已将应用接入MSE治理中心。
- 已开通MSE微服务治理。具体操作,请参见开通MSE微服务治理。
使用说明
- 同可用区优先支持Dubbo服务和Spring Cloud服务。
- 为保障业务可用性,同可用区Provider节点数占Provider总节点数超过设定阈值时,才会按照同可用区规则调用。
例如,可用区A的Consumer调用Provider时,阈值设置为20%,并开启同可用区优先,Provider共10台机器。
- 若可用区A的Provider节点数为3,只会调用可用区A的Provider节点。
- 若可用区A的Provider节点数为1,则会回退随机调用模式。
使用场景
当应用部署在多个机房时,会存在应用之间跨机房互相调用的情况,如图所示:

而Consumer跨机房调用Provider服务会增加网络延时,最终会增加HTTP响应时间。
开启同可用区优先后,Consumer会优先调用同机房的Provider服务,避免跨可用区带来的网络延时,从而减少HTTP的响应时间。如图所示:
