この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。
建築家
建築家
リスト
放送
茶屋
インテリジェントAI会話
.NETキャリア&テクニカルカレッジ
ちっちゃいなクズブログ
この版
利用者
Architect_Programmer_Code農業ネットワーク
»
建築家
›
プログラミング
›
その他の番組編成
›
Zookeeper分散ロック実装
眺める:
9508
|
答える:
2
Zookeeper分散ロック実装
[リンクをコピー]
クズども
掲載地 2018/03/20 16:23:52
|
|
|
|
閘門設計
鍵の実装アイデアを入手しましょう:
1. まず、ロックされたエンティティを表すディレクトリ(znode)を作成することから始めます。これは通常、ロックされたエンティティを表すために使われます。名前は:/lock_node
2. ロックを取得したいクライアントは、ロックディレクトリ内にznodeをロック/lock_nodeの子ノードとして作成し、ノードタイプはOrdered Temporary Node(EPHEMERAL_SEQUENTIAL)です。
例えば、2つのクライアントがznodeを作成します。/lock_node/lock-1と/lock_node/lock-2です
3. 現在のクライアントはgetChildren(/lock_node)を呼び出し、watchを設定せずにロックディレクトリのすべての子ノードを取得し、その後、自分より小さい兄弟ノード(ステップ2で作成)を取得します。
4. ステップ3で自分より小さいノードは存在せず、最小ノードはステップ2で作成されたものと同じであり、現在のクライアントシーケンス番号が最小であることを示し、ロックを取得し終了します。
5. クライアントは自分より次に小さい秩序ある一時ノードの状態を監視します
6. 監視対象のサブノードの状態が変わった場合は、ステップ3にジャンプし、ロックレースが終了するまでフォローアップ操作を続けます。
著者はここで分散ロックを紹介しません。以下のようにコード全体のフローチャートを見ていきましょう
先の:
.net/c#におけるAutoResetEventの詳細な説明
次に:
Android 7.0がHTTPSパケットキャプチャを実行できないという問題について
関連記事
•
MinIOストレージ(iii)ローカルファイルをminioバケットにコピーアップロード(移行)する
•
ブロックチェーン合意メカニズム:PoW、PoS、DPoS(ポイント・フォー・スー・フォー・ス)
•
.NET/C#コンソールサービスはConsulサービスディスカバリーに登録されています
•
共有ロックと排他ロック問題の分析
•
.NET/C# Lock ReaderWriterLockSlim テスト
•
【Turn】C#のマルチスレッド同時処理は様々なロックの下で実現
•
バーチャル俳優:Dapr vs Orleans
•
Dapr (1) Dapr 導入とインストールチュートリアル
•
【実践実践】XXL-JOB 分散タスクスケジューリングプラットフォームの利用と開発チュートリアル
•
.NET CoreはRedis Lua(ソースコード付き)に基づく分散ロックを実装しています
クズども
地主
|
掲載地 2018/03/20 16:49:35
|
Zookeeper分散式ロックステップ:
1. Zookeeperはノードを持つノードで、ファイルディレクトリに似ているため、ロックをディレクトリに抽象化します。ZookeeperはEPHEMERAL_SEQUENTIAL型のノードを持ち、複数のスレッドを持ち、Zookeeperが作成したノードを作成した際に作成順を整理し、このノードの下のディレクトリは連続します。
2. 現在のディレクトリの最小ノードを取得し、その最小ノードが現在のノードかどうか、ロックが成功したかどうか、ロック取得失敗でないかを判定します。
3. ロックが失敗した場合、スウォーム効果を避けるために、現在のノードの前のノードを取得し、そのノードを聞く必要があります。
4. これを行うと、ロックを解除すると次のノードにも通知されます。
クズども
地主
|
掲載地 2018/03/20 16:54:46
|
飼育員のステータスやイベントの種類について事前に学んでおきましょう。
ログインが見えます。
閲覧したセクション
技術チャット
フロントエンドフレーム
Windows/Linux
ジャワ
MySQL
.Net/C#
サーバー構成
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。
Mail To:help@itsvse.com