zookeeper注册服务除了服务所在的机器的ip+端口号外需要注册别的服务信息吗?比如查订单服务,执行时具体执行的方法入参为订单号,需要把这个参数的名称注册到zookeeper吗?
还有个小疑问,zookeeper注册时注册的ip+端口号可不可以改成用域名注册的形式?
zookeeper注册服务问题请教指点
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答
- 玄尺 2018-09-03 11:14关注
首先zookeeper一般的用途是一个注册中心,在当前的服务器架构下,不管公司规模有多大,都会使用负载均衡用于服务器水平扩展。这时候服务器之间的RPC调用:
A服务调用B服务,我们表示为A -> B。A1、A2、A3表示提供A服务的实例,B1、B2、B3是提供B服务的实例。所以一个A -> B,实际上是Ai -> Bj。
这里还要说明一下,RPC负载均衡一般都是分布式负载均衡(像nginx负载称为集中式负载均衡),这样每一个服务就需要能够知道服务提供方的可用服务列表,比如Ai可以从zookeeper中获取(B1、B2、B3、B4)。第二个问题:负载均衡都是面向接口编程。服务提供方会将RPC的接口单独发布出来,将ip:port:interface1,interface2注册到zookeeper就可以了。
第三个问题:ip换成域名这自然是可以的,前提是在客户端能够配置内网的DNS
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报