官方文档:
Nacos
和 Zookeeper 相同类型的替身, 更强大, 更方便, 更优雅地实现了注册中心, 配置中心等功能, 本质是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。
Dubbo
Apache Dubbo 是一款易用、高性能的 WEB 和 RPC 框架
如何集成
Nacos 提供了和 Dubbo 集成的方案, 对于 Spring 项目来说, 最重要的步骤就是导入依赖包和约定配置
-
确定接口规范: Provider 和 Consumer 模块中需要引入 common-api 模块, 约定 Provider 和 Consumer 之间调用的接口规范, 所以 common-api 中只有 Interface
-
配置模块在 Nacos 中的注册信息: Consumer 和 Provider 各自需要导入 Dubbo-Nacos 依赖 (其中包括 Nacos 客户端), 在 SpringBoot 的 aplications.yml 中配置自己的模块信息配置到 Nacos-Client 中, 启动时就可以注册到 Nacos 中
-
远程调用: Consumer 通过
@DubboReference
注入需要调用的接口, Provider 通过@DubboService
注册自己提供的接口服务, 我们就可以用像本地方法调用一样去调用远程方法, 具体细节交给 Nacos 和 Dubbo 完成, 不需要我们关心中间过程.
注意一下版本之间的兼容问题
代码示例:
贴一个我自己集成了 Dubbo 的项目在这:https://github.com/DAWN0ER/WordCount