Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成。
2.1 架构
在dubbo-test中创建了三个modle,分别为service接口层,service实现层以及MVC层,dao层这里省略。
2.2 service层
这里的service层只有写了个简单的接口,后续复杂的同理既可。
2.3 serviceimpl接口层(服务提供者:provider)
主要是实现2.2中的接口,需要在serviceimpl中导入service生成的jar包,可以直接使用maven安装到仓库,然后在pom中直接添加依赖既可。
项目中使用到的jar包和依赖,在本项目中我直接全部使用依赖的时候出现jar包冲突,所有我把一部分jar包和依赖分开了。
4.0.0
com.bsoft.cn
dubbo-test
0.0.1-SNAPSHOT
com.bsoft.cn
dubbo-serviceimpl
0.0.1-SNAPSHOT
war
dubbo-serviceimpl Maven Webapp
http://maven.apache.org
junit
junit
3.8.1
test
com.bsoft.cn.dubbo
dubbo-service
1.0
org.springframework
spring-web
4.3.10.RELEASE
org.apache.curator
curator-framework
2.8.0
org.apache.curator
curator-recipes
2.8.0
dubbo-serviceimpl
applicationContext.xml配置:
提供者在dubbo图像化界面显示如下:
2.4 MVC层(消费者:consumer)
mvc层也要使用到service接口,所以也要引入service层生成的jar,同样直接引入依赖既可。
代码:
依赖:
4.0.0
com.bsoft.cn
dubbo-test
0.0.1-SNAPSHOT
com.bsoft.cn
dubbo-web
0.0.1-SNAPSHOT
war
dubbo-web Maven Webapp
http://maven.apache.org
junit
junit
3.8.1
test
org.springframework
spring-webmvc
4.3.18.RELEASE
com.bsoft.cn.dubbo
dubbo-service
1.0
org.apache.curator
curator-framework
2.8.0
org.apache.curator
curator-recipes
2.8.0
dubbo-web
applicationContext.xml配置:
消费者在dubbo图像化界面显示如下:
在此次的学习中,遇到最大的问题是jar包的冲突,全部使用依赖引入jar时tomcat会启动异常,所以最后有些jar包是在lib下直接引入的。这个地方坑了好长时间,经验不足,写的不好的地方还请指出相互讨论。
上面的案列已经放到GitHub里面,有需要的可以去下载:源码地址
dubbo-admin下载地址:百度网盘链接:https://pan.baidu.com/s/1vpAhfnsmDgjPNsIMNDTGwg 密码:zm7d