ZooKeeper 分散ロック キュレーター ソース コード 2: 再入可能ロックの繰り返しロックとロック解除

ZooKeeper 分散ロック キュレーター ソース コード 2: 再入可能ロックの繰り返しロックとロック解除

[[410320]]

序文

ロックロジックが導入されました。では、スレッドの繰り返しロックにはどのように対処すればよいのでしょうか?

1. 再入室をロックする

前のセクションでは、ロックのプロセスを確認し、次に internalLock メソッドをもう一度見てみましょう。

ロックが正常に取得されると、現在のスレッドはConcurrentMapであるthreadDataに配置されます。

ロックが再入力された場合は、前の部分 lockData != null で直接停止し、lockData.lockCount.incrementAndGet(); を実行します。

lockCount の増加はロックの再入力を示します。

ここに注意してください! Curator のロック再入機能は Java コードで実装されています。

2. ロック解除

ロックを解除する必要がある場合は、lock.release() を呼び出して解除するだけです。具体的にはどのようにリリースされるのでしょうか?

主に 2 つの部分に分かれています。

  1. threadData 内の現在のスレッドのロックの数を減らします。
  2. ロックの数が 0 より大きい場合は、まだ再入時間が残っていることを意味するので、直接戻ります。
  3. ロックの数が 0 の場合、releaseLock はロックを解除し、threadData 内の現在のスレッド キーを削除します。

releaseLock メソッドには、リスナーを削除して一時シーケンス ノードを削除するという複雑なロジックはあまりありません。つまり、/locks/lock_01/_c_e855d232-c636-4241-bf8e-f047939a5833-lock-0000000001 です。

3. まとめ

ZooKeeper の InterProcessMutex ロックは、Java コード内の lockCount を維持し、再入可能かどうかを判断します。

この記事はWeChatの公開アカウント「Programmer Xiaohang」から転載したもので、以下のQRコードからフォローできます。この記事を転載する場合は、プログラマーXiaohangの公式アカウントまでご連絡ください。

<<:  TektonとArgo CDを組み合わせてGitOpsを実装する

>>:  クラウド コンピューティングに隠された 10 の秘密

推薦する

検索エンジンのアルゴリズムに準拠したプロモーションは良いプロモーションです

ウェブサイトのプロモーションは、長い間議論されてきたテーマです。さまざまな時期にさまざまな形式が登場...

SEO事例分析実践:ダンストレーニングサイトのホームページはK分析でした

ダンストレーニングウェブサイトの概要:毎日2〜4件のオリジナルまたは擬似オリジナルの更新を維持し、3...

仮想サーバー自動化の利点

IT 組織は自動化を利用して多くのタスクを簡素化していますが、IT 組織の新しい領域で自動化の需要が...

79の新しい消費者ブランドマーケティングのヒント

一挙に成功を達成することは、認知において高い地位を占めることである01新しい消費者ブランドは、新しい...

ウェブサイト訪問者の体験がSEMの成功または失敗を決定する

検索エンジン自体は検索の芸術です。検索エンジンに関するあらゆるマーケティング活動 (SEM) は、「...

ウェブサイトを運営するには何が欠けているのでしょうか?

最近とても忙しくて、皆さんとうまくコミュニケーションが取れませんでした。今日、QQ グループの友人が...

hostkvm: シンガポール VPS、CN2+BGP、20% 割引、月額 6.4 ドル、4G メモリ/2 コア/40g SSD/1T トラフィック/50M 帯域幅

HostkvmはシンガポールVPSの帯域幅を以前の30Mbpsから50Mbpsに無料でアップグレード...

リモートワークにおけるクラウドドキュメントストレージの 5 つのメリット

オンプレミス インフラストラクチャとクラウド プラットフォームのどちらを採用するかのメリットについて...

カマテラはどうですか?スペイン、マドリードのデータセンタークラウドサーバーレビュー

カマテラはどうですか? Kamatera スペイン クラウド サービス / スペイン VPS サーバ...

ウェブサイトがどのようにハッキングされるか、またウェブサイトのセキュリティ問題にどのように対処するかを説明します。

ほとんどのウェブマスターにとって、ウェブサイトのハッキングは日常的な話題ですが、もし自分が被害に遭っ...

フォースの覚醒、キャンプに生まれて——2018年百度情報フロー広告マーケティングサミットが大盛況のうちに終了

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています5月23日...

電子商取引企業のウェブサイトの健全な発展を実現する方法

電子商取引の時代において、企業のウェブサイトの地位と役割はますます重要になってきており、ウェブサイト...