Dubbox简介
Dubbo(读音[ˈdʌbəʊ])是阿里巴巴公司开源的一个基于Java的高性能RPC(Remote Procedure Call)框架,使得应用可通过高性能的RPC实现服务的输出和输入功能,可以和 Spring框架无缝集成。后期阿里巴巴停止了该项目的维护,于是当当网在这之上推出了自己的Dubbox。
dubbox架构
节点角色说明:
Provider: 暴露服务的服务提供方。
Container: 服务运行容器。
Registry: 服务注册与发现的注册中心。
Consumer: 调用远程服务的服务消费方。
Monitor: 统计服务的调用次调和调用时间的监控中心。
调用关系说明:
- 服务容器负责启动,加载,运行服务提供者。
- 服务提供者在启动时,向注册中心注册自己提供的服务。
- 服务消费者在启动时,向注册中心订阅自己所需的服务。
- 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。
- 服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。
- 服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心。
Zookeeper简介
Zookeeper是Apacahe Hadoop的子项目,可以为分布式应用程序协调服务,适合作为Dubbo服务的注册中心,负责服务地址的注册与查找,相当于目录服务,服务提供者和消费者只在启动时与注册中心交互。
Zookeeper的安装
- 安装JDK
- 上传并解压缩zookeeper安装包
tar -zxvf zookeeper-3.4.11.tar.gz -C /usr/local
- 将conf文件夹下zoo_sample.cfg复制一份,改名为zoo.cfg
cd /usr/local/zookeeper-3.4.11/conf
cp zoo_sample.cfg zoo.cfg
- 修改配置dataDir属性,指定一个真实目录
cd /usr/local/zookeeper-3.4.11
mkdir data
启动Zookeeper
- 进入bin目录,输入服务启动命令
./zkServer.sh star
- 关闭服务输入命令
./zkServer.sh stop
- 查看服务状态
./zkServer.sh stastus
注意: idea中搜索zookeeper可以连接zookeeper之后可以查看服务注册状态
本文含有隐藏内容,请 开通VIP 后查看