普通はたった2つの言葉です:怠惰と怠惰;
成功はたった2つの言葉:苦難と勤勉;
卓越性はたった2つの言葉:あなたと私です。
私に従って、JAVA、春の家族のバケツ、Linuxの操作と保守の知識を0から学び、無知なティーンエイジャーから人生の頂点にあなたを連れて行き、Bai Fumeiと結婚してください!
WeChatパブリック アカウント[ ITは非常に信頼できます]に従ってください。すべての記事は経験の要約です。私から学びましょう。あなたは素晴らしい牛です!
同時実行制御と分散ロック(redis / zookeeper)の実装[グラフィックチュートリアル] _第5章
---同時実行制御を実現するための再分散分散ロック
1再分割の概要
Redissonは、Redisに基づくJavaインメモリデータグリッドです。【Redis公式推奨】
Redissonは、NIOベースのNettyフレームワーク上のRedisキー値データベースによって提供される一連の利点を最大限に活用します。Javaユーティリティツールキットの共通インターフェイスに基づいて、分散特性を備えた一連の共通ツールをユーザーに提供します。 。これにより、シングルマシンマルチスレッドコンカレントプログラムを調整するための元のツールキットで、分散マルチマシンマルチスレッドコンカレントシステムを調整する機能を取得できるようになり、大規模な分散システムの設計と開発の難しさが大幅に軽減されます。同時に、さまざまな特徴的な分散サービスの組み合わせにより、分散環境でのプログラム間のコラボレーションがさらに簡素化されます。
このテストケースは、springbootマイクロサービスプロジェクトに基づいており、redisマスタースレーブ同期+センチネルでテストされます(redisキャッシュ、マスタースレーブ同期、およびフェイルオーバーの高可用性を確保するため)。言うことはあまりありません、ただコードに行ってください!
2 springboot-redissionの依存パッケージを導入
<!-- 【redission分布式锁实现步骤1】:引入redisson依赖 -->
<dependency>
<groupId>org.redisson</groupId>
<artifactId>redisson-spring-boot-starter</artifactId>
<version>3.10.4</version>
</dependency>
チップ:
(1)redisson-spring-boot-starter依存関係パッケージが導入された後、spring-data-redis依存関係パッケージはspringboot-redission依存関係パッケージに依存するため、(次のように)spring-data-redis依存関係を導入する必要はありません。
(2)spring-data-redis依存関係パッケージはjedis依存関係パッケージに依存しますが、redissionによって導入されたspring-data-redis依存関係パッケージはjedis依存関係パッケージを除外します。
(3)したがって、redisキャッシュを使用し、redissionを使用して分散ロックを実装する場合は、redission依存関係パッケージとjedis依存関係パッケージの両方を導入する必要があります。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>3.3.0</version>
</dependency>
3applicatopn.yml構成クラスを変更します
内容は以下の通りです。
4 applicaiton.ymlに基づいて書き込みredissionの設定クラス
Redission構成クラス:RedissionConfiguration.java
ヒント: ソースコードまたは技術的なガイダンスが必要な場合は、記事の下部にあるWeChatパブリックアカウントに注意を払い、「I want redission 」と返信して、redission分散ロックコードのデモを無料で入手してください〜
5 テストredission分散ロック
TestRedissionController.javaクラスを記述して、redissionフレームワークによって実装された分散ロックをテストします。
後で、redisマスタースレーブ同期+センチネル展開のチュートリアルを共有します。WeChatパブリックアカウントをフォローし、「I want redission 」と返信して、この記事のデモソースコードと関連チュートリアルを無料で受け取ります〜