Dubbo是分布式服务架构,是一个优秀的开源服务型框架,使得应用可以通过高性能的rpc实现服务的输入和输出功能。其实dubbo就是资源调度和治理中心的管理工具。
发布dubbo服务:在提供服务的应用中发布服务
<!-- spring和service整合 -->
<!-- 配置全局注解扫描 --> <context:component-scan base-package="nyist.e3.service"></context:component-scan> <!-- 使用dubbo发布服务 --> <!-- 1.提供服务的应用名称 name:一般为发布服务的项目名(可以随意))--> <dubbo:application name="e3-manager" /> <!--2.在zookeeper上注册服务:address:zookeeper注册中心所在的机器的ip地址:2181(端口号默认为2181),使用zookeeper的协议 --> <dubbo:registry address="ip:2181" protocol="zookeeper" /> <!-- 3.暴露服务的端口er ,默认为20080 --> <dubbo:protocol name="dubbo" port="20080"></dubbo:protocol> <!-- 4.声明需要暴露的服务接口 将服务接口放置到zookeeper注册中心--> <dubbo:service interface="接口所在的包的全定限名" ref="tbItemServiceImpl" timeout="600000"></dubbo:service> </beans>
dubbo服务的调用:
<!-- 作为客户端:引用dubbo服务 --> <!-- 第一步:配置调用服务的应用的名称 --> <dubbo:application name="e3-manager-web" /> <!-- 第二步:配置注册中心 --> <dubbo:registry address="注册中心所在的机器的ip地址:2181" protocol="zookeeper"></dubbo:registry> <!-- 引用具体提供的服务接口 --> <dubbo:reference interface="服务接口所在的包的全定限名" id="tbItemService"></dubbo:reference>