您的位置:首页 > 数据库 > Redis

Dubbo+Zookeeper简介

2017-04-12 11:02 246 查看
 Dubbo是一个分布式服务框架。Zookeeper也是一个分布式的服务框架,它被作为作为Dubbo服务的注册中心。Dubbo能与Zookeeper做到集群部署,当提供者出现断电等异常停机时,Zookeeper注册中心能自动删除提供者信息,当提供者重启时,能自动恢复注册数据,以及订阅请求。

一、使用背景

大规模服务化之前,应用可能只是通过RMI或Hessian等工具,简单的暴露和引用远程服务,通过配置服务的URL地址进行调用,通过F5等硬件进行负载均衡。

(1) 当服务越来越多时,服务URL配置管理变得非常困难,F5硬件负载均衡器的单点压力也越来越大。

此时需要一个服务注册中心,动态的注册和发现服务,使服务的位置透明。

并通过在消费方获取服务提供方地址列表,实现软负载均衡和Failover,降低对F5硬件负载均衡器的依赖,也能减少部分成本。

(2) 当进一步发展,服务间依赖关系变得错踪复杂,甚至分不清哪个应用要在哪个应用之前启动,架构师都不能完整的描述应用的架构关系。

这时,需要自动画出应用间的依赖关系图,以帮助架构师理清理关系。

(3) 接着,服务的调用量越来越大,服务的容量问题就暴露出来,这个服务需要多少机器支撑?什么时候该加机器?

二、安装与配置

1.在Linux上安装Zookeeper

 在http://www.apache.org/dist/zookeeper/上下载安装上适合的Zookeeper版本。然后到{soft}/conf下拷贝配置文件zoo_sample.cfg并改名为zoo.cfg。修改其中的配置参数:

clientPort:监听客户端连接的端口。

tickTime:基本事件单元,以毫秒为单位。它用来控制心跳和超时,默认情况下最小的会话超时时间为两倍的 tickTime。

2.启动Zookeeper

# ./bin/zkServer.sh start

3.在Linux上安装Dubbo

未完待续

三、总结

通过上面的介绍,我们经过思考就会发现整个的实现原理是十分简单的。经典的生成者消费者模式,通过在成功的调用层和实现层中间添加一个接口层,然后将对接口的调用都交给Dubbo+Zookeeper进行管理,就能实现调用与实现的分离,进行分布式部署

源码来源: minglisoft.cn/technology
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息