Spring整合Dubbo

Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。可以取代WebServcie。

 

1、搭建zookeeper(注册中心)

单机版的zookeeper使用zookeeper的默认配置即可,记得关闭防火墙。

1、上传zookeeper压缩包到linux。
2、修改权限:chmod 777 zookeeper-3.4.5.tar.gz
3、解压:tar -zxvf zookeeper-3.4.5.tar.gz

4、添加配置文件:
进入zookeeper根目录
cd conf
cp zoo_sample.cfg zoo.cfg

5、启动:
进入zookeeper根目录
cd bin
./zkServer.sh start

6、查看状态:./zkServer.sh status
出现如下内容即ok

[root@localhost bin]# ./zkServer.sh status
JMX enabled by default
Using config: /usr/local/mao/zookeeper-3.4.5/bin/../conf/zoo.cfg
Mode: standalone

2、配置dubbo服务提供方

src/main/resources/config/dubbo-provider.xml

<!-- 搭建Dubbo的服务提供方 -->
	<!-- 1、Dubbo服务方提供方名称 -->
	<dubbo:application name="babasport-service-product" />
	<!-- 2、连接zookeeper注册中心 (如果zookeeper是多台机器用,间隔) -->
	<dubbo:registry address="192.168.56.101:2181" protocol="zookeeper" />
	<!-- 3、暴露 IP PORT 接口 http://ip:port 默认端口号:20880 -->
	<dubbo:protocol port="20880" name="dubbo" host="127.0.0.1" />
	<!-- 4、暴露 接口    ref="testTbService" 使用注解注入时,需要在实现类的Service注解里面起个名字-->
	<dubbo:service interface="cn.itcast.core.service.TestTbService"
		ref="testTbService" />
@Service("testTbService")
@Transactional
public class TestTbServiceImpl implements TestTbService

3、配置dubbo服务消费方

src/main/resources/dubbo-consumer.xml

<!-- 搭建Dubbo的服务消费方 -->
	<!-- 1、Dubbo消费方提供方名称  -->
	<dubbo:application name="babasport-console" />
	<!-- 2、连接zookeeper注册中心 (如果zookeeper是多台机器用,间隔) -->
	<dubbo:registry address="192.168.56.101:2181" protocol="zookeeper" />
	<!-- 3、调用接口 -->
	<dubbo:reference interface="cn.itcast.core.service.TestTbService" id="testTbService" />

并且在Springmvc.xml中导入dubbo-consumer.xml

<!-- 导入dubbo的相关配置 -->
	<import resource="dubbo-consumer.xml"/>

4、将接口参数序列化

public class TestTb implements Serializable {
	private static final long serialVersionUID = 1L;
......

5、dubbo配置优化

设置超时时间src/main/resources/dubbo-consumer.xml

<!-- 局部设置 -->
<dubbo:reference interface="cn.itcast.core.service.TestTbService" id="testTbService"  timeout="600000" />

<!-- 全局设置 -->
<dubbo:consumer timeout="600000" />

6、消费方直接连服务方

src/main/resources/config/dubbo-provider.xml

<!-- 2、连接zookeeper注册中心 (如果zookeeper是多台机器用,间隔) -->
<!-- <dubbo:registry address="192.168.56.101:2181" protocol="zookeeper" /> -->
<!-- 不使用注册中心 -->
<dubbo:registry address="N/A"/>

src/main/resources/dubbo-consumer.xml

<!-- 不使用注册中心 -->
<dubbo:registry address="N/A"/>
<!-- 3、调用接口 -->
<dubbo:reference interface="cn.itcast.core.service.TestTbService" 
id="testTbService" timeout="600000" url="dubbo://127.0.0.1:20880" />

7、消费方不去检查服务方

src/main/resources/dubbo-consumer.xml

<!-- 不使用注册中心 -->
<dubbo:registry address="N/A" />
<!-- 3、调用接口 -->
<dubbo:reference interface="cn.itcast.core.service.TestTbService"
	id="testTbService" timeout="600000" url="dubbo://127.0.0.1:20880" />
<!-- 全局设置超时时间 -->
<dubbo:consumer timeout="600000" check="false"/>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值