Zookeeper 与硬件负载均衡器
我最近一直在研究 Zookeeper,想知道在以下用例中它与硬件负载均衡器相比如何:
- 服务发现
- 使用 ZooKeeper,服务器会将自身注册到一个公共 znode 上,客户端可以查找该 znode 以获得已注册服务器的列表。
- 使用硬件负载均衡器,我可以在一个 VIP 名称后面拥有多个服务器 IP,并且客户端只知道 VIP 地址。
- 负载均衡
- 使用 ZooKeeper,负载平衡发生在客户端。
- 使用 H/W LB,负载均衡发生在负载均衡器端!
那么,对于上述 2 个用例,使用 ZooKeeper 相对于硬件负载均衡器有什么具体优势吗?
I've been looking at Zookeeper recently and wondered how it compares with a hardware loadbalancer for the following usecases:
- Service discovery
- Using ZooKeeper, the server would register itself on a common znode which can be looked up by the client to get a list of registered servers.
- Using H/W loadbalancer, I can have couple of server IPs behind a VIP name and the client is only aware of the VIP address.
- Load balancing
- Using ZooKeeper, the load-balancing happens at the client side.
- Using H/W LB, the load-balancing happens at the load-balancer side!
So for the above 2 usescase, are there any specific advantages in using ZooKeeper over a H/W load-balancer?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
ZooKeeper 的优势之一是它更加通用。服务器节点可以注册更多的数据,而不仅仅是“嗨,我还活着”。例如,您可以将其用于数据分片。
硬件负载均衡器的优点之一是它可以缓存流量(当在典型的 HTTP 服务器前面使用时)。对于某些工作负载,即使 RAM 中的一点点缓存也可以显着降低到达服务器的流量。
One ZooKeeper advantage is that it's more versatile. Server nodes can register more data than simply 'Hi, I'm alive'. You can use it for data sharding for example.
One HW load balancer advantage is that it can cache traffic (when used in front of typical HTTP server). For some workloads even a little bit of cache in RAM can dramatically lower the traffic that reaches your servers.