分散システムでは、データの高可用性を確保するために、通常、データの複数のコピー (レプリカ) を保持し、これらのコピーを異なる物理マシンに配置します。ユーザーに正しい CRUD やその他のセマンティクスを提供するには、異なる物理マシンに配置されたレプリカが一貫していることを確認する必要があります。分散トランザクションは、今日のユビキタスな分散展開システムではほぼ必須です。
まずビジネスとは何かについてお話ししましょう。 分散トランザクション、トランザクション分離レベル、ACID については誰もがよくご存知だと思います。では、トランザクションとは何でしょうか? コンセプト: 一般的に、やるべきこと、または行われたことを指します。 一連の操作が単一の論理作業単位として実行され、すべての操作が実行される場合とまったく実行されない場合があります。 簡単に言えば、トランザクションは同時実行制御の単位であり、ユーザーによって定義された一連の操作です。 特性: トランザクションは、回復と同時実行制御の基本単位です。 トランザクションには、原子性、一貫性、独立性、永続性という 4 つの特性が必要です。これら 4 つの特性は、ACID 特性と呼ばれることがよくあります。
では、分散トランザクションとは何でしょうか? 簡単な例を挙げてみましょう。考えてみてください。注文プロセスには 10 個を超えるリンクが関係し、注文して支払いは正常に完了しますが、クーポンの控除は失敗し、ポイントの増加も失敗します。前者の企業は騙され、後者のユーザーは不満を抱くことになるでしょう。 しかし、これらのサービスがさまざまな場所にある場合、どうすれば全員の成功を保証できるのでしょうか?分散トランザクション。 分散トランザクションは、複数のデータベースを操作するトランザクションです。実際、同じデータベース上のトランザクションの概念を複数のデータベース上のトランザクションに拡張します。目的は、分散システムにおけるデータの一貫性を確保することです。分散トランザクション処理の鍵となるのは、トランザクションによって実行されたすべてのアクションをどこでも知る方法が必要であり、トランザクションをコミットするかロールバックするかの決定によって、統一された結果 (すべてコミットされるか、すべてロールバックされるか) が生成されなければならないことです。 より有名な分散トランザクションは次のとおりです。
ここでは、最も単純な 2pc (2 段階) と、今後よく使用される可能性のある最終的な一貫性であるセミメッセージ トランザクションを紹介します。他の取引も同様であり、多くの利点があります。 もちろん、欠点もあります。 たとえば、データベース リソースを長時間ロックすると、システムの応答が遅くなり、同時実行性が実現できなくなります。 ネットワーク ジッターによりスプリット ブレインが発生し、トランザクションの参加者がコーディネーターの指示を適切に実行できなくなり、データの一貫性が失われます。 単一障害点: たとえば、ある瞬間にトランザクション コーディネーターがダウンした場合、選挙メカニズムを通じて新しいリーダーを生成できますが、そのプロセスで必然的に問題が発生します。 TCC は強力な技術チームによってのみサポートされ、コストが高すぎます。 まずはこの2つを紹介しましょう。 2pc(2段階提出): フェーズ 1: 準備フェーズ (投票フェーズ)、フェーズ 2: 提出フェーズ (実行フェーズ) 2pc (2 フェーズ コミット) は、分散トランザクションの最も初期の形式と言えます。これは、メッセージ ミドルウェアまたはすべてのトランザクション管理を通じて複数のシステムを調整する、仲人のようなものになります。 2 つのシステムがトランザクションを操作する場合、両方ともリソースをロックしますが、トランザクションはコミットしません。両方の準備ができたら、メッセージ ミドルウェアまたはすべてのトランザクション マネージャーに通知し、トランザクションを個別にコミットします。最終結果にかかわらず、第2フェーズでは現在の取引が終了します。 しかし問題は、システム A のトランザクションが正常に送信されたが、ネットワークの変動やさまざまな理由によりシステム B の送信に失敗した場合、やはり失敗するということです。 最終的な一貫性: プロセス全体を通じて、次のことが保証されます。
[この記事は51CTOコラム「AiChinaTech」、WeChatパブリックアカウント(id:tech-AI)からのオリジナル記事です] この著者の他の記事を読むにはここをクリックしてください |
<<: コンテナ オーケストレーション ツールを選択するにはどうすればよいでしょうか?
イノベーションは進歩を推進し、テクノロジーが急速に進化するにつれて、新しいトレンドが驚くべき方法で未...
1 これは背景です最近、複数の条件を任意に組み合わせて注文データを照会する機能を提供してほしいという...
クラウド コンピューティングは現在、広く使用され、開発されています。クラウドコンピューティングにおけ...
原題: 失恋レビューサイト、「私の元カレは最高」と文句を言いたければ、見てみてください私の元彼はなぜ...
insighthosting(ドメイン名も2つあります:insightwebhosting.net ...
電子商取引は急速に発展していますが、実店舗の小売業者にとってはジレンマが生じています。記者らは昨日、...
ユーザーエクスペリエンスについては、多くの人が異なる意見を持っています。 360 の Zhou Ho...
Reprisehostingはどうですか? Reprisehostingは、アメリカ西海岸のシアトル...
クラウド コンピューティングは、世界中の企業のビジネスのやり方を変えつつあると言われています。しかし...
従来のマーケティングは、広告主が消費者に製品コンセプトを浸透させることですが、オンラインメディアはセ...
少し前、Weibo が WeChat に取って代わられるという噂がありました。事実はそうではないこと...
みなさんこんにちは。私はみなさんの古い友人です。今日は、IDC の長所と短所についてお話ししたいと思...
[[254606]]合併、買収、再編は市場の活動を判断するための重要な基準です。そこで、本稿では、2...
月収10万元の起業の夢を実現するミニプログラム起業支援プラン驚くべきことに、最近、KicksBall...
才能は科学技術革新の重要な原動力です。 12月26日、記者は2023年テンセント犀鳥エリート人材プロ...