若您需要在 Dubbo 断网的环境下测试应用是否能正常运行,使用 PelicanDT 可以轻松地模拟 Dubbo 断网的测试环境。本文将介绍使用 PelicanDT 实现 Dubbo 断网的方法。
前提条件
- 已安装 PelicanDT SDK,请参见安装 PelicanDT SDK。
- 已准备好 Linux 远程服务器。
操作步骤
本示例将模拟 Dubbo 环境下 8085 端口断网 20s 的测试环境。具体操作步骤如下:
下载 Dubbo-example 工程(用于禁止端口网络访问的示例)。
在路径
Dubbo-example/src/test/resources/env/func
下打开Dubbo.properties
配置文件,并填入您的服务器 IP、用户名和登录密码等信息。在路径
Dubbo-example/src/test/java/com/alibaba/pelican/rocketmq
下打开TestDubboNetwork.java
文件并运行单元测试。
结果验证
执行程序后,日志输出内容如下:
2019-02-01 17:20:30 [INFO] [main] c.a.p.c.client.utils.NetAccessUtils - Block port 8085 protcol TCP, dalay time 20 seconds.
2019-02-01 17:20:45 [INFO] [main] c.a.p.rocketmq.TestDubboNetwork - Operation timed out (Connection timed out)
Hello 123123, response form provider: 10.66.204.25:20880
- 通过第 1 行日志可以看出,8085 端口断网;
- 通过第 2 行日志可以看出,在 8085 端口断网的情况下,接口访问超时;
- 通过第 3 行日志可以看出,端口网络恢复后,接口访问成功。
文档内容是否对您有帮助?