zookeeper框架01
为什么需要分布式协调服务
http://www.cnblogs.com/yuyijq/p/3391945.html
在进程内通过synchronized,lock实现同步,
我们在进程内还有各种各样的协调机制(一般我们称之为同步机制)。现在我们大概了解了什么是协调了,但是上面介绍的协调都是在进程内进行协调。在进程内进行协调我们可以使用语言,平台,操作系统等为我们提供的机制。
那么如果我们在一个分布式环境中呢?也就是我们的程序运行在不同的机器上,这些机器可能位于同一个机架,同一个机房又或不同的数据中心。在这样的环境中,我们要实现协调该怎么办?那么这就是分布式协调服务要干的事情。
因为网络不可靠,
分布式协调服务能干什么
https://www.cnblogs.com/yuyijq/p/3424473.html
配置管理,名字服务,分布式锁,集群管理
分布式锁:集群:高可用:分布式锁:在某个时刻只让一个服务去干活,当这台服务出问题的时候锁释放,立即fail over到另外的服务。
集群管理:服务发现:在provider集群中找到可用的节点;
比如Alibaba开源的SOA框架Dubbo就采用了Zookeeper作为服务发现的底层机制)。还有开源的Kafka队列就采用了Zookeeper作为Cosnumer的上下线管理。
java-nio,netty
接下来会初始化ServerCnxnFactory,这个是用来接收来自客户端的连接的,也就是这里启动的是一个tcp server。在Zookeeper里提供两种tcp server的实现,一个是使用java原生NIO的方式,另外一个是使用Netty。默认是java nio的方式,一个典型的Reactor模型。因为java nio编程并不是本文的重点,所以在这里就只是简单的介绍一下。
更多推荐


所有评论(0)