系统间通信解决方案——Dubbo+Zookeeper实现服务间通信

系统间通讯的解决方案:

  实现表现层和服务层间、不同服务不同系统间的远程通讯,多对多的调用关系

  1. 一种方案是WebService,基于soap协议,效率不高
  2. 一种是使用restful形式的服务,http+json,中小型项目常用,工程太大的话调用关系混乱
  3. Dubbo,使用RPC协议进行远程调用,直接使用socket通信。传输效率高,并可以统计出系统之间的调用关系、调用次数。
  4. 使用SpringCloud的集成解决方案

Dubbo的架构节点:

服务的提供者provider

服务的消费者consumer

注册中心register  为消费者提供匹配服务,从而使消费者获取服务的ip和端口号然后向服务提供者调用服务(使用zookeeper注册中心,zookeeper在大数据中也可以作为集群管理工具

监控中心Monitor  统计服务的调用次数和调用时间的监控中心

Zookeeper:

  Zookeeper可作为服务的注册中心、也可在大数据中作为集群管理工具

安装Zookeeper,并启动

Zookeeper的安装:

第一步:安装jdk

第二步:解压缩zookeeper压缩包

[root@izvluy1jk36n8jz /]# tar zxf zookeeper-3.4.12.tar.gz

查看

[root@izvluy1jk36n8jz /]# ll

进入目录

[root@izvluy1jk36n8jz /]# cd zookeeper-3.4.12

创建data文件夹目录

第三步:将conf文件夹下zoo_sample.cfg复制一份,改名为zoo.cfg

进入conf目录

[root@izvluy1jk36n8jz zookeeper-3.4.12]# cd conf

修改名字 

[root@izvluy1jk36n8jz conf]# mv zoo_sample.cfg  zoo.cfg

第四步:修改配置dataDir属性,指定一个真实目录

Vim进入编辑,然后:wq保存

第五步:

启动zookeeper:bin/zkServer.sh start

关闭zookeeper:bin/zkServer.sh stop

查看zookeeper状态:bin/zkServer.sh status

 

[root@izvluy1jk36n8jz zookeeper-3.4.12]# cd bin

[root@izvluy1jk36n8jz bin]# ./zkServer.sh start

ZooKeeper JMX enabled by default

Using config: /zookeeper-3.4.12/bin/../conf/zoo.cfg

Starting zookeeper ... STARTED

[root@izvluy1jk36n8jz bin]#

Dubbo发布服务

<!-- 发布dubbo服务 -->
<!-- 提供方应用信息,用于计算依赖关系 -->
<dubbo:application name="taotao-manager" />
<!-- 注册中心的地址 -->
<dubbo:registry protocol="zookeeper" address="120.78.89.177:2181" />
<!-- 用dubbo协议在20880端口暴露服务 -->
<dubbo:protocol name="dubbo" port="20880" />
<!-- 声明需要暴露的服务接口 -->
<dubbo:service interface="com.taotao.service.ItemService" ref="itemServiceImpl" timeout="300000"/>

引用服务

<!-- 引用dubbo服务 -->
<dubbo:application name="taotao-manager-web"/>
<dubbo:registry protocol="zookeeper" address="120.78.89.177:2181"/>
<dubbo:reference interface="com.taotao.service.ItemService" id="itemService" />

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值