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 ...
随机推荐
- Xamarin XAML语言教程基本页面ContentPage占用面积(二)
Xamarin XAML语言教程基本页面ContentPage占用面积(二) Xamarin XAML语言教程基本页面ContentPage占用面积(二)内容页面的添加 为了方便用户添加Content ...
- [CF407E]k-d-sequence
题意:给定$a_{1\cdots n}$,让你求出一个最长的子串$a_{l\cdots r}$,使得这个子串加上最多$k$个数字并排序后是一个公差为$d$的等差数列 首先$d=0$就是最长连续相等段, ...
- Java高级架构师(一)第05节:TortoiseGit的本地使用
- HashMap源码-使用说明部分
/* * Implementation notes. * 使用说明 * * This map usually acts as a binned (bucketed) hash table, but * ...
- menuStrip鼠标经过自动显示菜单
//--------------------------------------------------------------------------------- private void For ...
- 【iOS微博客户端开发】1、微博整体项目的构建
回顾自己做过的项目,总结里面的知识点,分享自己参照WXHL的视频开发的一个模拟微博客户端的过程,为了还在IOS上找不到项目参考的朋友,这里会由一系列手把手的教程,如有不足,还希望可以抖抖小手,献上您宝 ...
- Pressed状态和clickable,duplicateParentState的关系
做Android开发的人都用过Selector,可以方便的实现View在不同状态下的背景.不过,相信大部分开发者遇到过和我一样的问题,本文会从源码角度,解释这些问题. 首先,这里简单描述一下,我遇到的 ...
- Hive使用简介
---恢复内容开始--- 指定分隔符 HIVE输出到文件的分隔符 ,列与列之间是'\1'(ASCII码1,在vim里显示为^A),列内部随着层数增加,分隔符依次为'\2','\3','\4'等. 例: ...
- Flask+uwsgi+Nginx环境搭建
开源软件准备需要的软件列表:setuptools-33.1.1.zipPython-2.7.13.tgzpip-9.0.1.tar.gznginx-1.10.3.tar.gz软件统一上传到/usr/l ...
- 多重采样(MultiSample)下的FBO反锯齿 【转】
在三维渲染的过程中,锯齿总是让人讨厌的东西.抗锯齿的一种采用方式是多重采样,本文主要小记一下FBO与多重采样的关系.——ZwqXin.com 首先,关于FBO(Frame Buffer Object) ...