服务注册与发现下

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。

服务注册与发现【下】


服务注册与发现【下】




以上是关于服务注册与发现下的主要内容,如果未能解决你的问题,请参考以下文章

服务注册与发现上

springcloud注解

如何做好注册后域名的安全措施?

2、微服务注册中心

注册中心Eureka监听服务

微服务注册与发现