在之前的 Dubbo 服务开发中,我们一般使用 Zookeeper 作为注册中心,同时还需要部署 Dubbo 监控中心和管理后台。
Nacos 注册中心Nacos 是阿里巴巴的开源的项目,全称 Naming Configuration Service ,专注于服务发现和配置管理领域。
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
Nacos 生态图如 Nacos 全景图所示,Nacos 无缝支持一些主流的开源生态,例如
Spring Cloud
Apache Dubbo and Dubbo Mesh TODO
Kubernetes and CNCF TODO。
使用 Nacos 简化服务发现、配置管理、服务治理及管理的解决方案,让微服务的发现、管理、共享、组合更加容易。
com.alibaba
dubbo-registry-nacos
2.6.7
com.alibaba
dubbo
2.6.5
com.alibaba.spring
spring-context-support
1.0.2
io.netty
netty-all
4.1.32.Final
配置文件:
## application dubbo.application.name = spring-boot-pay dubbo.registry.address = nacos://47.104.197.9:8848 dubbo.protocol.name=dubbo dubbo.protocol.port=-1
启动类引入 Dubbo 注解:
@EnableDubbo
@SpringBootApplication
public class Application {
private static final Logger logger = LoggerFactory.getLogger(AliPayServiceImpl.class);
public static void main(String[] args){
SpringApplication.run(Application.class, args);
logger.info("启动成功");
}
}
接口实现:
//省略部分代码
import com.alibaba.dubbo.config.annotation.Service;
@Service(group = "itstyle-nacos", retries = 1, timeout = 10000)
public class AliPayServiceImpl implements IAliPayService {
}
打包接口:
org.apache.maven.plugins
maven-jar-plugin
service
package
jar
${project.build.directory}/classes
pay-service
${project.build.directory}
com/itstyle/modules/alipay/service
@Controller
@RequestMapping(value = "alipay")
public class AliPayController {
@Reference
private IAliPayService aliPayService;
}
启动项目,登录到管理控制中心,如果发现有数据,说明注册成功。
小结一个 Nacos 就轻松搞定了,还捎带着配置管理中心,一举两得,何乐不为。
参考案例https://gitee.com/52itstyle/spring-boot-pay/tree/spring-boot-nacos-pay



