序文Redis に基づく Redisson 分散インターロック RedissonMultiLock オブジェクトは、複数の RLock オブジェクトをインターロックに関連付けることができ、各 RLock オブジェクト インスタンスは異なる Redisson インスタンスから取得できます。 もちろん公式サイトの紹介です。具体的には何ですか?連動するMultiLockの使い方とソースコードを見てみましょう! 1マルチロックの使用公式ドキュメントによると、ここでの Redisson クライアントは異なる場合があります。もちろん、一般的な仕事では、クライアントが必要ないとは言いません。 2 ロックMultiLock ロックについて読む前に、通常のロックに関する関連記事を読んでおく必要があります。 ソースコードエントリ: org.redisson.RedissonMultiLock#lock() デフォルトのタイムアウトのleaseTimeは設定されていないため、-1になります。 このメソッドは長すぎるので、分割して読んでみましょう。
waitTime = 4500、leaseTime = -1、unit = MILLISECONDS のパラメータを指定して tryLock メソッドを呼び出します。 tryLock のロジックを見てみましょう。 leasingTime != -1 が満たされていないため、この部分は直接スキップされます。 waitTime != -1 条件が満たされ、remainTime = 4500、lockWaitTime = 4500 になります。 したがって、failedLocksLimit() メソッドは直接 0 を返します。これは、すべてのロックが正常に取得される必要があることを意味します。 重要なポイントは次のとおりです。 すべてのロックを横断し、1 つずつロックします。 ロックのロジックは再入可能ロックと変わりません。したがって、Lua スクリプトは分析されません。 上記はtryLockがロックされた後の結果です。 ロックが正常に取得された場合、成功したロックは acquireLocks コレクションに格納されます。 ロックに失敗した場合はfailedLocksLimitを判断する必要があります。ここでは 0 なので、正常にロックされたセット acquireLocks 内のすべてのロックが直接解放され、正常にロックされたセットがクリアされてイテレータが復元されます。 各ロックの後に、残りのロック時間 remainTime が更新されます。 remainTime が 0 以下の場合、ロックがタイムアウトしたことを意味し、直接 false が返されます。 これにより、外部の while (true) ロジックが実行され、RedissonMultiLock#tryLock が再度実行されます。 3 ロック解除ロックのロジックを読んだ後では、ロックの解除が理解しやすくなります。 トラバースしてロックを直接解除するだけです。 lock.unlockAsync() は、呼び出される RedissonBaseLock#unlockAsync() メソッドです。 4 結論私の理解では、図は次のようになります。 一般的には、key1、key2、key3...keyN を List コレクションに入れて、すべてが成功するまで反復処理してロックします。ロックを解除するときは、ロックを再度通過してロックを解除します。 この記事はWeChatの公開アカウント「Programmer Xiaohang」から転載したもので、以下のQRコードからフォローできます。この記事を転載する場合は、プログラマーXiaohangの公式アカウントまでご連絡ください。 |
<<: F5: エッジ コンピューティングはデジタル バンキングのエクスペリエンスをどのように変えるのでしょうか?
>>: 分散システムアーキテクチャの1つであるマスターワーカーアーキテクチャ
ユーザーのニーズは変化し続けます。検索エンジンは常に適応しています。今日のユーザーは、Web サイト...
今は4月ですが、卒業まであと2か月しかないため、多くの都市の大学生は就職活動に焦っています。現在、多...
劉愛林記者と季家鵬記者が北京から報告した。それから1か月も経たないうちに、Zhongdai.comは...
Baisiyun は新しく設立された企業です。最初のリリースは、公式に提供される VPS である「米...
テンセントは7年前に「汎エンターテインメント」という概念を提唱し、それ以来、文学、音楽、映画、テレビ...
oplink は 2006 年に登録され、AS40156 でヒューストンに独自のコンピュータ ルーム...
近年、5G、人工知能、デジタルツインなどの技術の継続的な発展により、モノのインターネットの潮流がさら...
皆さんご存知のとおり、colorcrossingはしばらく前からchicagovps.netを買収し...
SEO 作業は商品キーワードを中心に行われるため、キーワードの選択は SEO 作業全体を効果的に実行...
草の根レベルで、私はウェブサイトを作る趣味があり、自分のウェブサイトを有名にして、もっと多くの人に知...
Appleは最近、ユーザーがiOSと他のスマートフォンをより簡単に切り替えられるようにする新しいツー...
Cloudcone はブラックフライデー中にプロモーションを行っており、HostCat の小さな掲示...
140語の要約:ソーシャル メディアで成功するには、避けるべきよくある間違いがいくつかあります。これ...
ウェブサイト プランナーとして、SEO の知識を少し学ぶと、ウェブサイトを計画したり宣伝したりすると...
インターネット時代では、データと情報が急速に変化しており、それに伴い、ネットワークのセキュリティを危...