日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Apache Zookeeper入门1

發(fā)布時(shí)間:2025/3/17 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Apache Zookeeper入门1 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

口水:Zookeeper是我目前接觸過Apache開源系統(tǒng)中比較復(fù)雜的一個(gè)產(chǎn)品,要搞清楚這個(gè)東東里面的運(yùn)作關(guān)系還真不是一時(shí)半會可以搞定的事,本人目前只略知皮毛之術(shù)。

ZooKeeper 是什么?

? ZooKeeper 顧名思義 動物園管理員,他是拿來管大象(Hadoop)?、?蜜蜂(Hive)?、?小豬(Pig)? 的管理員, Apache Hbase和 Apache Solr 以及LinkedIn sensei??等項(xiàng)目中都采用到了 Zookeeper。ZooKeeper是一個(gè)分布式的,開放源碼的分布式應(yīng)用程序協(xié)調(diào)服務(wù),ZooKeeper是以Fast Paxos算法為基礎(chǔ),實(shí)現(xiàn)同步服務(wù),配置維護(hù)和命名服務(wù)等分布式應(yīng)用。
?

ZooKeeper 如何工作?

? ZooKeeper是作為分布式應(yīng)用建立更高層次的同步(synchronization)、配置管理 (configuration maintenance)、群組(groups)以及名稱服務(wù)(naming)。在編程上,ZooKeeper設(shè)計(jì)很簡單,所使用的數(shù)據(jù)模型風(fēng)格很像文件系統(tǒng)的目錄樹結(jié)構(gòu),簡單來說,有點(diǎn)類似windows中注冊表的結(jié)構(gòu),有名稱,有樹節(jié)點(diǎn),有Key(鍵)/Value(值)對的關(guān)系,可以看做一個(gè)樹形結(jié)構(gòu)的數(shù)據(jù)庫,分布在不同的機(jī)器上做名稱管理。

?? Zookeeper分為2個(gè)部分:服務(wù)器端和客戶端,客戶端只連接到整個(gè)ZooKeeper服務(wù)的某個(gè)服務(wù)器上。客戶端使用并維護(hù)一個(gè)TCP連接,通過這個(gè)連接發(fā)送請求、接受響應(yīng)、獲取觀察的事件以及發(fā)送心跳。如果這個(gè)TCP連接中斷,客戶端將嘗試連接到另外的ZooKeeper服務(wù)器。客戶端第一次連接到ZooKeeper服務(wù)時(shí),接受這個(gè)連接的 ZooKeeper服務(wù)器會為這個(gè)客戶端建立一個(gè)會話。當(dāng)這個(gè)客戶端連接到另外的服務(wù)器時(shí),這個(gè)會話會被新的服務(wù)器重新建立。

?? 啟動Zookeeper服務(wù)器集群環(huán)境后,多個(gè)Zookeeper服務(wù)器在工作前會選舉出一個(gè)Leader,在接下來的工作中這個(gè)被選舉出來的Leader死了,而剩下的Zookeeper服務(wù)器會知道這個(gè)Leader死掉了,在活著的Zookeeper集群中會繼續(xù)選出一個(gè)Leader,選舉出leader的目的是為了可以在分布式的環(huán)境中保證數(shù)據(jù)的一致性。如圖所示:

? 另外,ZooKeeper 支持watch(觀察)的概念。客戶端可以在每個(gè)znode結(jié)點(diǎn)上設(shè)置一個(gè)觀察。如果被觀察服務(wù)端的znode結(jié)點(diǎn)有變更,那么watch就會被觸發(fā),這個(gè)watch所屬的客戶端將接收到一個(gè)通知包被告知結(jié)點(diǎn)已經(jīng)發(fā)生變化。若客戶端和所連接的ZooKeeper服務(wù)器斷開連接時(shí),其他客戶端也會收到一個(gè)通知,也就說一個(gè)Zookeeper服務(wù)器端可以對于多個(gè)客戶端,當(dāng)然也可以多個(gè)Zookeeper服務(wù)器端可以對于多個(gè)客戶端,如圖所示:

你還可以通過命令查看出,當(dāng)前那個(gè)Zookeeper服務(wù)端的節(jié)點(diǎn)是Leader,哪個(gè)是Follower,如圖所示:

我通過試驗(yàn)觀察到 Zookeeper的集群環(huán)境最好有3臺以上的節(jié)點(diǎn),如果只有2臺,那么2臺當(dāng)中不管那臺機(jī)器down掉,將只會剩下一個(gè)leader,那么如果有再有客戶端連接上來,將無法工作,并且剩下的leader服務(wù)器會不斷的拋出異常。內(nèi)容如下:
java.net.ConnectException: Connection refused
??????? at sun.nio.ch.Net.connect(Native Method)
??????? at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:507)
??????? at java.nio.channels.SocketChannel.open(SocketChannel.java:146)
??????? at org.apache.zookeeper.server.quorum.QuorumCnxManager.connectOne(QuorumCnxManager.java:347)
??????? at org.apache.zookeeper.server.quorum.QuorumCnxManager.connectAll(QuorumCnxManager.java:381)
??????? at org.apache.zookeeper.server.quorum.FastLeaderElection.lookForLeader(FastLeaderElection.java:674)
??????? at org.apache.zookeeper.server.quorum.QuorumPeer.run(QuorumPeer.java:611)
2010-11-15 00:31:52,031 – INFO? [QuorumPeer:/0:0:0:0:0:0:0:0:2181:FastLeaderElection@683] – Notification time out: 12800

并且客戶端連接時(shí)還會拋出這樣的異常,說明連接被拒絕,并且等待一個(gè)socket連接新的連接,這里socket新的連接指的是zookeeper中的一個(gè)Follower。
org.apache.zookeeper.ClientCnxn$SendThread.startConnect(ClientCnxn.java:1000) Opening socket connection to server 192.168.50.211/192.168.50.211:2181??
org.apache.zookeeper.ClientCnxn$SendThread.primeConnection(ClientCnxn.java:908) Socket connection established to 192.168.50.211/192.168.50.211:2181, initiating session??
org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1118) Unable to read additional data from server sessionid 0×0, likely server has closed socket, closing socket connection and attempting reconnect??
org.apache.zookeeper.ClientCnxn$SendThread.startConnect(ClientCnxn.java:1000) Opening socket connection to server localhost/127.0.0.1:2181??
?2010-11-15 13:31:56,626 WARN?? org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1120) Session 0×0 for server null, unexpected error, closing socket connection and attempting reconnect??
?

?先寫到這里,全面了解Zookeeper不太容易,光看Apache Zookeeper官方的wiki和文檔還不能對其有深入的了解,想閱讀Zookeeper中的部分源代碼。另外,本人目前正在學(xué)習(xí)和了解ing,歡迎大家與我交流,謝謝。

?

原文:http://www.javabloger.com/article/apache-zookeeper-hadoop.html

轉(zhuǎn)載于:https://blog.51cto.com/chenlx/746364

新人創(chuàng)作打卡挑戰(zhàn)賽發(fā)博客就能抽獎!定制產(chǎn)品紅包拿不停!

總結(jié)

以上是生活随笔為你收集整理的Apache Zookeeper入门1的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产a级片免费看 | 国内精品人妻无码久久久影院蜜桃 | 亚洲无遮挡| 亚洲欧美国产高清va在线播放 | 日韩欧美一区二区区 | 午夜激情视频 | 国产乱码精品一区二区三区不卡 | 久久影视av | 一区二区视频国产 | 一区二区视频网 | 中文字幕精品一二三四五六七八 | 毛片毛片毛片毛片毛片毛片毛片 | 高清欧美精品xxxxx在线看 | 日韩国产欧美在线观看 | 天堂av最新网址 | 黄色在线网 | 欧美动态视频 | 中文字幕 日本 | 日韩在线91 | 天堂俺去俺来也www久久婷婷 | 四虎影院在线免费播放 | 国产自在线拍 | 在线免费成人 | 播放毛片 | 26uuu国产精品视频 | 亚洲综合久久久 | 激情综合激情 | 久久久久久久久久久久 | 在线观看亚洲av每日更新 | 亚洲伊人av | 欧美被狂躁喷白浆精品 | 波多野结衣免费观看视频 | 日本在线免费播放 | 国产白袜脚足j棉袜在线观看 | 国产91一区 | 久久精品一区二区三区四区 | 国产一区二区三区免费在线观看 | 天堂a在线| 日本一区二区三区电影在线观看 | www.白丝 | 永久毛片 | 中文字幕人成 | 人人妻人人玩人人澡人人爽 | 国内毛片毛片毛片毛片 | 制服丝袜天堂 | 色呦呦精品 | 久久这里只有精品久久 | 欧美日韩成人在线视频 | 亚洲国产精| 成年人在线免费看 | 久久精品视频免费观看 | 狠狠噜噜 | 粉嫩av蜜桃av蜜臀av | 欧美 日韩 国产精品 | 亚洲精品一区二区三区区别 | 久久久久亚洲精品中文字幕 | 日本黄色三级网站 | 久久亚洲国产成人精品性色 | 精品午夜一区二区 | 人妻洗澡被强公日日澡电影 | 日韩99| 激情小说亚洲图片 | 亚洲1234区 | 十八禁视频网站在线观看 | 国产一区在线免费观看 | 午夜久久剧场 | 在线不卡毛片 | 成人国产精品免费观看动漫 | a天堂中文在线观看 | 日韩午夜在线播放 | 日日摸日日碰夜夜爽无码 | 国产在线观看免费高清 | 久热超碰 | 日本大奶视频 | 欧美三级欧美成人高清 | 福利社区一区二区 | 久久盗摄 | 操女人网| 超碰在线公开免费 | 婷婷丁香社区 | 色婷婷综合视频 | 一区二区三区免费 | 777久久 | 99欧美精品| 国产在线视频在线观看 | 免费无码毛片一区二三区 | 在线欧美国产 | 久久久久久久九九九九 | 亚洲射色 | 日本成人激情 | 草莓视频在线观看入口w | 日本一区视频 | av官网在线观看 | 九九综合久久 | 九色视频丨porny丨丝袜 | 看片一区 | 亚洲国产婷婷 | 国模二区 | 奇米网在线观看 |