一个Java码农眼中的技术世界

Dubbo-Api-Docs -- Apache Dubbo文档

2020-12-22  本文已影响0人  邪影oO

Dubbo-Api-Docs 是一个展示dubbo接口文档,测试接口的工具. 参考了springfox的设计,通过增加一些描述接口及参数的注解,即可展示具备测试能力的接口文档.

Dubbo-Api-Docs 目前通过直连服务节点的方式获取该服务的接口列表. 测试接口时可以直连也可以通过注册中心.未来会增加通过注册中心获取服务列表的方式.并根据Dubbo的升级规划增加新的功能支持.也会根据社区的需求增加功能.

Dubbo-Api-Docs 会在服务提供者启动完毕后扫描docs相关注解并将处理结果缓存.并增加一些Dubbo-Api-Docs相关的Dubbo提供者接口. 缓存的数据在将来可能会放到Dubbo元数据中心中.

涉及的仓库

Dubbo-Api-Docs 根据功能拆分,分别在两个仓库中:

dubbo-spi-extensions :

该仓库存放dubbo的一些非核心功能的扩展, Dubbo-Api-Docs 作为该仓库中的一个子模块,由于该仓库属于Dubbo 3.0中规划的一部分,而Dubbo-Api-Docs是基于Dubbo 2.7.x 开发的,所以在该仓库中增加了2.7.x分支,Dubbo-Api-Docs就在该分支下.
该仓库中包含了 Dubbo-Api-Docs 的文档相关注解、注解扫描能力和使用示例:

Dubbo-Admin

文档的展示及测试放在了 dubbo admin 项目中

使用

当前版本: 同Dubbo版本号

由于Dubbo-Api-Docs目前还处于测试阶段,并未发包到maven中央仓库,需要自行编译.编译方式同大部分java工程编译方式,此处就不赘述了

<dependency>
    <groupId>org.apache.dubbo</groupId>
    <artifactId>dubbo-api-docs-annotations</artifactId>
    <version>${dubbo-version}</version>
</dependency>

<dependency>
    <groupId>org.apache.dubbo</groupId>
    <artifactId>dubbo-api-docs-core</artifactId>
    <version>${dubbo-version}</version>
</dependency>
  1. dubbo提供者项目的方法参数中加上 Dubbo-Api-Docs 注解

为避免增加生产环境中的资源占用, 建议单独创建一个配制类用于启用Dubbo-Api-Docs, 并配合 @Profile("dev") 注解使用
当然, Dubbo-Api-Docs 仅在项目启动时多消耗了点CPU资源, 并使用了一点点内存用于缓存, 将来会考虑将缓存中的内容放到元数据中心.
2 . 启动提供者项目

  1. 下载 dubbo-admin 下载地址

目前dubb-admin也未发布包含Dubbo-Api-Docs的版本,需要下载源码启动

  1. 启动 dubbo-admin
  2. 访问: http:// localhost:8080
  3. 进入"接口文档"模块

注解说明

使用注意

示例说明

dubbo-spi-extensions / Dubbo-Api-Docs 中的 dubbo-api-docs-examples 目录中为实例项目:

实例使用步骤

  1. 下载并启动nacos
  2. 任意启动 examples-provider 和 examples-provider-sca 中的任意一个,当然也可以两个都启动. examples-provider 使用 20881端口 examples-provider-sca 使用20882端口.两个项目都是spring boot项目,启动类在 org.apache.dubbo.apidocs.examples 包下.
  3. 启动 Dubbo-Admin, 浏览器访问: http:// localhost:8080
  4. 进入 dubbo-admin 中的 "接口文档"模块
    5: 在"dubbo提供者IP"和"dubbo提供者端口"中分别输入提供者所在机器IP和端口, 点击右侧 " 加载接口列表" 按钮
  5. 左侧接口列表中加载出接口列表,点击任意接口,右边展示出该接口信息及参数表单.
  6. 填入表单内容后,点击最下方测试按钮
  7. 响应部分展示了响应示例及实际响应结果

页面截图

dubbo_docs_zh.png
上一篇 下一篇

猜你喜欢

热点阅读