Dubbo 服务调试与管理实用命令指南
在微服务架构下,不同项目组之间经常需要联调接口。与其编写繁琐的测试代码,不如直接利用 Dubbo 服务自带的 Telnet 功能进行快速验证。从 Dubbo 2.0.5 版本开始,服务提供端口支持 Telnet 命令,这为运维和开发人员提供了极大的便利。
连接服务
首先需要确认目标服务的 IP 和端口。通常 Dubbo 注册中心端口默认为 20880,具体需根据实际配置调整。在终端执行以下命令:
telnet localhost 20880
如果连接成功,回车进入 Dubbo 命令模式,提示符变为 dubbo>。
查看服务列表
进入命令模式后,可以使用 ls 命令查看已发布的服务和方法。
dubbo> ls
com.test.DemoService
指定服务名可查看其下的具体方法:
dubbo> ls com.test.DemoService
queryDemoPageList
insertDemolist
uploadDemoList
deleteDemolist
常用命令说明:
ls:显示所有服务列表。ls -l:显示服务详细信息列表。ls XxxService:显示指定服务的方法列表。ls -l XxxService:显示指定服务的方法详细信息。
调用服务接口
这是最实用的功能之一。调用接口时,参数以 JSON 格式传入,系统会自动打印返回值和耗时。
dubbo> invoke com.test.DemoService.queryDemoPageList({"id":"100"}, 1, 2)
{"totalCount":1,"data":[{"date":"2011-03-23 14:10:32","name":"张三","keyword":null}]}
elapsed: 10 ms.
注意:参数必须严格符合 JSON 格式,否则可能无法解析。如果不确定服务名,也可以尝试只传方法名,系统会自动查找包含该方法的服务。
查看服务状态
除了调用接口,还可以监控服务的运行状态和调用统计。
统计调用次数
使用 count 命令可以查看方法的调用情况。需要注意的是,统计数据可能存在一定的延迟或缓存机制,实时性仅供参考。
dubbo> count com.test.DemoService
+-------------------------+-------+--------+--------+---------+-----+
| method | total | failed | active | average | max |
+-------------------------+-------+--------+--------+---------+-----+
| queryDemoPageList | 0 | 0 | 0 | 0ms | 0ms |
| insertDemolist | 0 | 0 | 0 | 0ms | 0ms |
+-------------------------+-------+--------+--------+---------+-----+
汇总状态
status 命令用于显示资源的健康状况。当所有资源正常时显示 OK,存在警告则显示 WARN,出现错误则显示 ERROR。
dubbo> status
OK
更多详细命令请参考官方文档:Telnet 命令参考手册

