仕上げノート - アリは、オープン・メッセージング・サービス(ONS)の原則と実践を分散しました

1、MQシーン
    1)注文非同期デカップリング
    分散トランザクションの問題が解決する2)
    3)プラットフォームチャットに適用
    4)大規模な機械キャッシュ同期
    5)MySQLのバイナリログサブスクリプション・データ配信
2、ONSシナリオ
    非同期に、デカップリング、最終的に一貫並列
3、設計が想定している
    1)各PCのマシンがダウンして、マシンを修理できなかった
    2)任意のクラスタは、処理能力不足があり
    3)最悪のシナリオが起こる
    4)ネットワーク環境内には、あなたに最高のユーザー体験を提供するために、低遅延を必要とし
図4に示すように、主要な設計
    1)分散クラスタ
        A、理論的には無限の処理能力
        B、高可用性クラスタレベル
    2)強力なセキュリティデータ
        、単一の冗長ディスク・レベル
        B、マルチレベルの冗長キューの単一のセット
        C、設定メッセージキューの複数冗長
    3)データの膨大な量の蓄積
        A、プッシュモード:単純な論理加入者
        B、モードを引っ張っ:特定の速いフォロー
        Cを、組み合わせプッシュとプル:キューは、消費者に通知し、消費者が(2回の相互作用)プルする
        アリを使用して、Dをポーリングと接続長さ:ポーリングは、プル存在は、全く接続がメッセージまで待つ長く維持されていない、引く
    送達遅延ミリ秒4)
5、重要な概念を
    1)トピック:第一段階メッセージタイプ、メインタイトル
    2)タグボート:メッセージ型の第2ステージ、字幕
    3)グループを送信クラスタメーカー
    4)サブスクライブ:消費者がクラスタ
    5)は1対1をRocketMQ、 1ランダム、多くはない
    6)ネットワーク三つの状態は:、成功失敗し、応答しなかった
6を、メッセージの問題をスクランブル:メッセージサーバは、正確に修正するために必要なプロセス、ない
    1)は、メッセージID、送信
    2)加入者処理(シャーディング)へのメッセージの唯一の組が存在する
    数(すなわち、「粒度をロック」)3)できるだけ小さいメッセージのグループ
7、メッセージの重複
    ネットワーク到達不能:原因を繰り返した1)
    2)冪等は:関係なく動作が繰り返される回数、結果は同じ(解決策、高性能)ではない
    3)非冪等、重量に対する
        各メッセージの一意のタグIDを確認し、;
        B、メッセージ処理テーブルの重量の成功を確実にするために同時ログイン
    4)は重い代償を行く:余分なTPSとQPS
8、分散トランザクションの最適化
    1)トランザクション1 - > MQサーバー- >トランザクション2
    を同時に2)に成功したが、失敗しました:
        、メッセージを、
        B、実行トランザクション1;
        C、送信された確認メッセージ 給;
        D、消費者への配信メッセージ
    3)処理のタイムアウト問題(リピート):2追加メッセージは、トランザクションテーブルを確認する(重複テーブル)
    4)失敗メッセージ(トランザクション2)失敗:手動操作(小さな確率イベント)を記録した後
----------- ----------
著者:猿の兄弟は、1024
ソース:CSDN
元ます。https://blog.csdn.net/qq_21033663/article/details/73379103
著作権:この記事はブロガーのオリジナルの記事、再現され、添付してくださいリンク上のボーエン!

おすすめ

転載: www.cnblogs.com/zeenzhou/p/11246201.html