sprigboot集成dubbo服务

扯淡

        在github上一直对Dubbo有所关注,前不久突然看到他们发布了项目dubbo-spring-boot-project(https://github.com/dubbo/dubbo-spring-boot-project),于是赶紧跟进了下,发现用了这个starter不需要自己部署zookeeper了,配置也更加清晰简单了,点赞!

集成过程

        在官方的地址中有个samples模块示例代码,本文也是参考示例代码进行的测试实现。

        本文测试项目结构:

 

1,基础模块搭建

首先新建maven项目springboot-demo,然后在项目中添加对应的模块
新建模块:demo-dubbo-vo,仅需要定义dubbo服务需要的vo对象,一定要Serializable,如UserAddr,代码示例:

 

新建模块:demo-dubbo-service,仅需要定义dubbo服务的接口,如UserAddrService,代码示例:

 

2,服务提供模块搭建

a,新建springboot项目模块:demo-dubbo-provider,在pom中引入上面的vo和service基础模块,引入dubbo-spring-boot-starter模块

 

 

 

b,修改配置文件application.properties,添加如下配置(一定要注意dubbo.scan.basePackages路径准确):

 

c,新建UserAddrProviderService,实现基础模块里的接口,并添加dubbo注解配置,如下:

 

3,服务消费模块搭建

a,新建springboot项目模块:demo-api,在pom中引入上面的vo和service基础模块,引入dubbo-spring-boot-starter模块

 

 

b,修改配置文件application.properties,添加如下配置:

 

c,新建UserAddrController,消费dubbo接口,如下:

4,测试

测试api地址:
http://localhost:8080/queryUserAddr?id=1

服务提供端:
健康检查 : http://localhost:9091/health
Dubbo信息 : http://localhost:9091/dubbo

服务消费端:
Health Checks : http://localhost:8081/health
Dubbo Endpoint : http://localhost:8081/dubbo

 

引入pom文件错误

我用的是maven的默认仓库地址,在引入dubbo-spring-boot-starter的时候,总是失败,所以这里只有参考官方github建议的方式,在pom文件中指定仓库地址后才行,如下:

 

本文示例代码git地址:
http://git.soilove.cn/root/springboot-dubbo-demo


guolin

guolin

相信世界,向往美好,记录成长过程,分享个人心得,充实平凡生活。 网站信条:因为喜欢,所以热爱。

发表评论

电子邮件地址不会被公开。 必填项已用*标注