Zookeeper クライアントの使用と従来のアプリケーションのシナリオ

目次

1.構成センターを作成する

 2. Zookeeper クライアントを使用して、一度しか監視できない問題を解決する

2.1 クライアントの書き込み

 2.2 構成クラスの記述

 3. キュレーター クライアントが Zookeeper に接続します

4. クラスター環境を構築する

 4.1 Zookeeper クライアントがクラスター環境に接続する

 4.2 クラスタの動的構成


1.構成センターを作成する

 他のクライアントを介してファイルを監視する、最初のウィンドウ

第二次进入服务器:
cd /usr/local/zookeeper/apache-zookeeper-3.8.0-bin
bin/zkServer.sh start conf/zoo.cfg
bin/zkCli.sh

# 第一个窗口创建节点并修改节点内容
[zk: localhost:2181(CONNECTED) 1] create /config {"key":"anykey","url":"http://redis.com"}
Created /config
[zk: localhost:2181(CONNECTED) 2] get -w /config
{"key":"anykey","url":"http://redis.com"}
[zk: localhost:2181(CONNECTED) 3] set /config {"key":"anykey","url":"redis://redis.com"}

2 番目のウィンドウが監視します。最初に get -w /config と入力してノードを監視します。次に、最初のウィンドウが変更された後に 2 番目のウィンドウが通知を受け取りますが、この監視は 1 回しか有効になりません。

[zk: localhost:2181(CONNECTED) 0] get -w /config
{"key":"anykey","url":"redis://redis.com"}
[zk: localhost:2181(CONNECTED) 1] 
WATCHER::

WatchedEvent state:SyncConnected type:NodeDataChanged path:/config

 2. Zookeeper クライアントを使用して、一度しか監視できない問題を解決する

2.1 クライアントの書き込み

機能表示: Zookeeper クライアントが確立され、データの変更を動的に感知できます

 

 jar パッケージを導入します。バージョンはサーバーと一致しています

 

 

 クライアント コードの書き込み。メイン スレッドが実行された後、Zookeeper によって実行される非同期スレッドが実行されます。

 

 

 2.2 構成クラスの記述

構成クラスを作成し、

 

 

ループ監視機能を実装します。

 

 

 

バージョン番号をもとにデータを修正する バージョン番号が間違っていると、データを修正することができません。

バージョン番号に基づいてデータを削除およびフェッチする

 3. キュレーター クライアントが Zookeeper に接続します

pom.xml はキュレーターを導入します

クライアントを接続する 

子ノードを再帰的に作成する

 

 保護モードは withProtection を使用して UUID を生成し、重複ノードの作成を防ぎます。

ノードをセットアップします。 

 ノードを削除します。 

子ノード 

スレッドプールを指定 

 

4. クラスター環境を構築する

クラスターには 3 つの役割があります: リーダーはデータの読み取りと書き込みを担当し、フォロワーはデータの読み取りを担当します. リーダーが失敗すると、そのうちの 1 つがリーダーに選出されます. オブザーバーはリーダーと同じデータを持ちます. 、ただし、データの読み取りのみを担当します。

 フォルダー zk1、zk2、zk3、zk4 を作成し、myid の一意の ID を生成します

 

Zoo1.cfg を変更する

 

Zoo1.cfg ファイルを変更して、次の構成を追加します。 

 2 番目の構成ファイルを変更します。3 番目の構成ファイルは次のようになります。

 

 順番にサーバーを起動します 

 

 サーバーの状態を順番に表示する 

サーバーに接続する 

 4.1 Zookeeper クライアントがクラスター環境に接続する

クラスター構成

 クラスタ環境への再接続を試みる

 サーバー接続ポートの表示 

サーバーを閉じて、再接続メカニズムを表示します 

テスト クラスター

 4.2 クラスタの動的構成

 

 

おすすめ

転載: blog.csdn.net/qq_21575929/article/details/125772804