Skip to content

Dubbo请求支持功能需求单 #2745

Description

@zhu992

Is your feature request related to a problem? Please describe.​
目前我们的系统在处理微服务架构下的请求时,主要支持HTTP/REST协议,但缺乏对Dubbo协议的原生支持。在实际开发中,我们经常需要与基于Dubbo框架的后端服务进行交互,这导致开发人员需要:

手动编写复杂的Dubbo客户端代码进行测试和调试
无法在统一的界面中管理、测试和监控Dubbo服务调用
缺乏可视化的Dubbo服务注册中心浏览和接口文档查看功能
测试Dubbo服务时需要进行额外的环境配置和代码编写,效率低下
无法像HTTP请求那样方便地进行请求录制、回放和性能测试

这增加了开发、测试和运维的复杂度,降低了团队的工作效率。
Describe the solution you'd like
我希望系统能够原生支持Dubbo协议的请求处理,具体功能包括:

Dubbo客户端集成

集成Dubbo客户端SDK,支持Dubbo 2.x和3.x版本
支持多种序列化协议:Hessian2、Java、JSON、Kryo等
支持多种注册中心:Zookeeper、Nacos、Consul、Etcd等

可视化Dubbo服务管理

提供Dubbo服务注册中心浏览器,可查看所有可用服务
展示服务提供者、消费者信息
显示服务接口的元数据和方法签名

Dubbo请求构造器

提供图形化界面构造Dubbo请求
支持参数类型自动识别和输入验证
支持复杂对象参数(嵌套对象、集合、数组等)
提供参数模板和示例值

请求测试与调试

支持同步和异步调用
显示详细的调用结果,包括返回值、异常信息
提供调用链追踪和性能指标
支持批量测试和参数化测试

接口文档与Mock

自动生成Dubbo接口文档
支持接口Mock,便于前端开发和测试
提供接口版本管理

监控与日志

记录Dubbo调用历史
提供调用统计和性能分析
支持异常告警和监控

Describe alternatives you've considered

使用独立的Dubbo测试工具

如Dubbo Admin、Telnet命令等
缺点:工具分散,需要额外学习,无法与现有系统集成

开发自定义Dubbo客户端

为每个项目编写专门的测试客户端
缺点:重复工作,维护成本高,缺乏统一标准

使用Postman等工具的扩展

尝试通过插件或脚本支持Dubbo
缺点:功能有限,稳定性差,用户体验不佳

继续使用HTTP网关转换

通过HTTP网关将请求转换为Dubbo调用
缺点:增加系统复杂度,性能损耗,无法直接调试Dubbo服务

相比这些替代方案,原生集成Dubbo支持将提供更好的用户体验、更高的效率和更低的维护成本。
Additional context

技术栈兼容性

需要支持Java 8+环境
考虑与Spring Boot、Spring Cloud等框架的集成
支持Dubbo的常见配置方式(XML、注解、API)

性能考虑

Dubbo客户端应支持连接池管理
考虑异步非阻塞调用以提高并发性能
支持负载均衡和容错策略配置

安全性

支持Dubbo的令牌验证、参数验证等安全机制
敏感信息(如注册中心地址、认证信息)的安全存储

用户体验

界面设计应与现有HTTP请求功能保持一致性
提供详细的使用文档和示例
考虑添加快捷键和快捷操作

扩展性

设计良好的插件架构,便于未来支持其他RPC协议(如gRPC、Thrift)
提供API接口,便于与其他系统集成

优先级建议

第一阶段:基础Dubbo客户端和请求构造器
第二阶段:服务发现和接口文档
第三阶段:高级功能(Mock、监控、性能测试)

这份需求单清晰地阐述了问题背景、期望的解决方案、考虑的替代方案以及相关的技术上下文,可以作为开发团队评估和实施该功能的依据。

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions