ZooKeeper_基础知识学习
ZooKeeper是Hadoop的开源子项目(Google Chubby的开源实现),它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护、命名服务、分布式同步、组服务等。
Zookeeper的Fast Fail 和 Leader选举特性大大增强了分布式集群的稳定和健壮性,并且解决了Master/Slave模式的单点故障重大隐患,这是越来越多的分布式产品如HBase、Storm(流计算)、S4(流计算)等强依赖Zookeeper的原因。
Zookeeper在分布式集群(Hadoop生态圈)中的地位越来越突出,对分布式应用的开发也提供了极大便利,这是迫切需要深入学习Zookeeper的原因。
学习注意
1.存储数据数据
保存stom集群的全部数据,可监控整个数据变化,整个集群和作业。
轻量级数据库,
文件系统的目录结构,每个路径都有node节点作为唯一标识,可以存储小数据,状态,acl,版本
节点数据变化,触发Watches事件,通知到每个客户端,一次性触发,需设置下一个通知
临时节点不会带子节点。连接断掉会自动消失。
2.不存在单点故障。快速失败模式,短时间内自动修复,提供稳定服务
3.分布式应用的配置管理
4.命名服务
每个节点全局是唯一路径,序列化的节点,默认的命名规范
5.分布式通知和协调
用了Watches机制,节点数据发生变化,通知到其他观察者。实现不同系统对数据变更的实时处理,不同系统对zk同一节点进行注册
6.分布式锁:
用对象锁,控制应用执行顺序。
保证数据强一致性,控制时序
相信每时每刻,zk节点数据对各个客户端一定是相同的
7.分布式队列
先进先出,等队列成员聚齐才开始执行(增加了分布式锁)
课程大纲:
第1讲 .Zookeeper熟悉和用途综述
Zookeeper基础知识、体系结构、数据模型
常见的应用场景
第2讲.Zookeeper集群搭建、命令行Client操作
集群搭建和测试
命令行客户端操作
Stat
第3讲、Watches、Node、API介绍、Java Client开发Watches、Node详解
API介绍
Java Client开发
第4讲、Java Client 进阶练习
进阶练习
授权操作
第5讲、实战案例开发一之配置管理
配置管理的案例开发
第6讲、实战案例开发二分布式锁实现
分布式锁的原理及实现
第7讲、运维指南及注意事项
日常维护注意事项
配置参数详解
4字命令详解
第8讲、运维和监控Web平台搭建和使用
Taokeeper搭建和使用
TaoKeeper提供Web界面,可对Zookeeper集群进行多方面监控,如连接数、Watcher数、集群运行状态、磁盘内存CPU使用率等全方位监控,并提供告警接口。
ZooKeeper_基础知识学习的更多相关文章
- GCC基础知识学习
GCC基础知识学习 一.GCC编译选项解析 常用编译选项 命令格式:gcc [选项] [文件名] -E:仅执行编译预处理: -S:将C代码转换为汇编代码: -c:仅执行编译操作,不进行连接操作: -o ...
- (转)Linux基础知识学习
Linux基础知识学习 原文:http://blog.csdn.net/ye_wei_yang/article/details/52777499 一.Linux的磁盘分区及目录 Linux的配置是通过 ...
- Objective-c基础知识学习笔记
Objective-c基础知识学习笔记(一) 一直有记录笔记的习惯.但非常久没分享一些东西了,正好上半年開始学习IOS了,如今有空写点.因开发须要,公司特意为我们配置了几台新MAC.还让我们自学了2周 ...
- AXAJ基础知识学习
AXAJ基础知识学习 博客首页 Ajax简介 ajxa全称是Asynchronous Javascript And XML ,就是异步的JS 和XML 通过Ajax可以再浏览器中向服务器发送异步请求, ...
- Vue2基础知识学习
Vue2基础知识学习 01.初识 new Vue({ el: '#root', //用于指定当前Vue实例为哪个容器服务,值通常为css选择器符 data () { return { } } }); ...
- C#基础知识学习
C#基础知识整理 学习地址:http://blog.csdn.net/column/details/csarp.html
- 韩天峰博客 php基础知识学习记录
http://rango.swoole.com 写好PHP代码真的不容易,给大家几个建议: 慎用全局变量,全局变量不好管理的,会导致你的代码依赖于全局变量,而耦合度太高. 一定不要复制粘贴代码,可重用 ...
- 〖前端开发〗HTML/CSS基础知识学习笔记
经过一天的学习,把慕课网的HTML/CSS基础知识学完了,笔记整理: 1. 文件结构: HTML文件的固定结构: <html> <head>...</head> & ...
- Linq的简介和基础知识学习
学习LINQ之前,我们要知道LINQ是干什么,解决什么问题的,怎样学习? 一.LINQ简介 1.什么是LINQ? 什么是LINQ?LINQ中文翻译为语言集成查询(Language Integrated ...
随机推荐
- RPD Volume 172 Issue 1-3 December 2016 评论03
Using Stable Free Radicals to Obtain Unique and Clinically Useful Data In Vivo in Human Subjects Abs ...
- mysql 列转行,合并字段的方法
数据表(表名:xsk) +----+------+-----------+-------+ | id | name| course | score | +----+------+----------- ...
- 【最大流】【Dinic】bzoj2929 [Poi1999]洞穴攀行
TMD 题意其实是与1或n相连的边只能走一次,其他可以走无限次……翻译去死. 裸最大流. #include<cstdio> #include<cstring> #include ...
- 金融应用,计算将来的学费 Exercise05_07
/** * @author 冰樱梦 * 时间:2018年下半年 * 题目:金融应用,计算将来的学费 * */ public class Exercise05_07 { public static vo ...
- 实用类String.length应用-用户名密码长度
package demo3; import java.util.Scanner; //会员注册,用户名长度不小于3,密码长度不小于6,两次输入的密码必须相同 public class Register ...
- Why DNS Based Global Server Load Balancing (GSLB) Doesn’t Work
Why DNS Based Global Server Load Balancing (GSLB) Doesn't Work
- 推荐一些不错的开源免费易上手的web前端框架
1. bui 2.Semantic UI 3.oniui
- 关于group by后为每个分组编号
- Java集合迭代器 Iterator分析
简介 迭代器是遍历容器的一种常用方法,它屏蔽了容器的实现细节,无需暴露数据结构内部,就可以对容器进行遍历,迭代器本身也是一种设计模式,迭代是一种特殊的遍历方式. Iterator 在java中,迭代器 ...
- http://www.binghe.org/2010/03/use-httpsurlconnection-in-java/
http://www.binghe.org/2010/03/use-httpsurlconnection-in-java/