sogou/workflow

Workflow遇到DNS解析出多个IP的处理

Closed this issue · 2 comments

我想了解下workflow在遇到一个DNS域名能解析出多个IP是怎么处理的,以及遇到某个IP实际是不可用的话怎么处理。

不过好像这是DNS服务器的问题,选择权不在WORKFLOW里,那么这个问题关闭了哈。

这两个问题比较深入。
1、同一域名下多个IP地址的情况。DNS resolver模块会吧这些IP交给RouteManager,RouteManager把所有的IP组成一个通信组。通信组里每个IP都是对等的,每次对通信组的访问选择哪一个IP,是CommScheduler模块根据这每个IP的当前负载以及是否有keep-alive连接来决定。这是最底层的一级负载均衡,一般用户感觉不到。
2、RouteManager会对通信组里的IP做熔断和恢复的。这也是底层的一级服务治理。