EDEN-MACEはカバーし、配布の現在の人気のモードをまとめたもので、かつ容易に配布することができますポスト包括的なアカウント管理システムを提供する物流管理システムの管理委員会の柔軟なセットです。
オープンソース住所:https://gitee.com/codingdb/distribution_management
ビデオチュートリアル
リンク:https://pan.baidu.com/s/1he3Tnk324JKoMPsbtEPcyw 抽出コード:p20v
このアップデートは、アカウントのセキュリティを確保するために、飼育係ロック操作量によって配布されています。
以下は、分散ロックの一時ZKを使用すると、ノードの実装を命じました。
パススイッチが設けられているzookeeper.propertiesクラス・ファイル・システムでは、ケースは、ここでオフロックされていない次のように開いて、特定のロック手順のケースがあるのみ議論:
まず、ファイルzookeeper.properties内の構成ファイルZK相対アドレスに配置された
ロード及び起動時2.システムがCuratorFrameworkを実行
関連ばねアセンブリ@AmoutLock注釈3.上昇
4.入力してくださいの方法が進むにフロントロックはそれの構成に応じて通過するか否かを判断しますキュレーターのInterProcessMutexクラス
5は、複数のユーザが方法入ることを確認できた/量/ {にuserId}アカウント作成
一時ZKを作成するためにノードにおける(lock.acquireによって6)を作成/量/ {USERIDは}
7.操作アカウント実行
次の最小のノードがある場合、ノードは、ノードは、時計機構によって通知の方法を入力した場合)(lock.release介して8
利点:
1.アカウントが配布を容易に実現することができるロック分散アプリケーションの展開
プログラムの堅牢性を確保するために、各アカウントを監視することにより、2。
欠点
1は、アクセスする必要が原因でロックされたネットワークによると、他の理由は、より遅く実行するようにプログラムの原因となりますことZK
2.増加にプログラムの複雑さ
のコードの一部を
if(args!=null&&args.length>0&&curatorFramework!=null){
String path = "/amount/"+args[0];
final InterProcessMutex lock = new InterProcessMutex(curatorFramework,path);
try {
log.info("金额开始锁表{}",path);
lock.acquire();
return point.proceed();
}finally {
lock.release();
log.info("金额锁表完成{}",path);
}
}
操作の特定のクラスはAmountMangeServiceImplおよび関連するコメントを参照して達成することができます。