像功能区这样的客户端负载均衡器是如何工作的?
How does client side load balancer like ribbon works?
我正在尝试了解客户端负载平衡的工作原理。到目前为止,我已经能够理解以下内容。
- 没有集中式负载均衡器。
- 负载均衡器现在驻留在服务本身。
- 这些负载均衡器了解所有服务实例(它们的
ip 端口等)通过服务发现。
- 根据负载平衡算法,他们可以转发
对这些实例的请求。
我不明白的是:
客户端如何发出请求,在传统的负载均衡器中,用户可以使用负载均衡器的 dns 名称发出请求,但是在客户端负载均衡中如何进行,尤其是在实例来来去去的云环境中。
这里的关键字是服务发现。
您需要有一个中央登记簿,其中列出了您的所有服务实例(如果它们由于某种原因出现故障则不列出)。然后,您的客户端负载平衡器可以要求注册服务实例的 URL 和 select 其中之一。
执行此操作的工具是 Eureka,例如。
我正在尝试了解客户端负载平衡的工作原理。到目前为止,我已经能够理解以下内容。
- 没有集中式负载均衡器。
- 负载均衡器现在驻留在服务本身。
- 这些负载均衡器了解所有服务实例(它们的 ip 端口等)通过服务发现。
- 根据负载平衡算法,他们可以转发 对这些实例的请求。
我不明白的是: 客户端如何发出请求,在传统的负载均衡器中,用户可以使用负载均衡器的 dns 名称发出请求,但是在客户端负载均衡中如何进行,尤其是在实例来来去去的云环境中。
这里的关键字是服务发现。
您需要有一个中央登记簿,其中列出了您的所有服务实例(如果它们由于某种原因出现故障则不列出)。然后,您的客户端负载平衡器可以要求注册服务实例的 URL 和 select 其中之一。
执行此操作的工具是 Eureka,例如。