在nginx中配置后端服务地址时,为了更好地观测各个负载均衡策略的效果,应当设置为127.0.0.1而非localhost。因为对localhost进行域名解析后实际上得到两个ipv4, ipv6两个地址。Nginx会将这两个地址视作是不同的服务器。我们在本机的两个端口运行了后端服务,因此nginx会认为共有四个应用服务器, 这会造成每两次请求,后端服务器切换一次。
参见:
Nginx Round Robin is balancing every second request - Server Fault