服务注册与发现下
Posted 点融黑帮
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了服务注册与发现下相关的知识,希望对你有一定的参考价值。
在《服务注册与发现【上】》(点击阅读原文查看上)中,我们从架构演进和代码分析方面讲解讲解了服务注册与发现,下篇将继续从单元测试角度深入讲解。
1. 在zookeeper中准备结点 com/dianrong/cfg/1.0.0/rpcservice
create /com/dianrong/cfg/1.0.0/rpcservice “”
2. 模拟docker/JVM启动参数设置
由于点融网是通过物理机IP加端口映射到docker实例IP加端口的方式对外提供服务,因此需要通过java -D配置宿主机的IP加端口以便应用程序获取服务IP加端口用来进行服务注册。
1. 在服务注册之前通过zookeeper控制台查看,期望的注册节点目前为空。
2. 启动服务注册单元测试,sleep 10s。
3. 观察zookeeper中注册结点,期望的临时节点已经存在。
通过服务注册以后然后服务发现,发现节点与预期注册结点一致。
通过服务注册以后然后负载均衡,负载均衡获取节点与预期节点一致。
1. 准备两套单元测试并模拟docker/JVM启动参数设置。
2. 启动服务注册,服务发现,负载均衡集成单元测试,测试控制台按照预期打印出服务注册信息,注册了两个服务节点通过负载均衡交叉出现。
3. 通过zookeeper控制台查看成功注册两个节点。
4. 关闭机器1单元测试,结点1在zookeeper离线,结点2在zookeeper在线。
负载均衡只有一个节点存在达到预期目的
1. 启动服务注册,服务发现,负载均衡集成单元测试,测试控制台按照预期打印出服务注册信息。
2. 通过Linux iptables开启防火墙,模拟网络中断。
服务掉线,通过zookeeper控制台查看注册节点消失。
服务发现方任然可以从本地Hash中获取服务节点。
3. 关闭Iptables,服务上线。
服务上线,通过zookeeper控制台查看注册节点出现。
服务发现方获取服务节点重刷本地Hash中。
Zookeeper宕机
1. 启动服务注册,服务发现,负载均衡集成单元测试,测试控制台按照预期打印出服务注册信息。
2. 关闭zookeeper,单元测试出现连接拒绝错误,但是任然能按照预期获取本地hash中的服务注册信息。
3. 启动zookeeper,单元测试打印出重连信息,并重刷本地服务hash。
以上是关于服务注册与发现下的主要内容,如果未能解决你的问题,请参考以下文章