アントファイナンシャルの「テクニカルミドルプラットフォーム」:1億レベル分散システムアーキテクチャの実践

アントファイナンシャルの「テクニカルミドルプラットフォーム」:1億レベル分散システムアーキテクチャの実践

1.分散アーキテクチャ利点と概念

01伝統的なモノリシック建築の特徴

(画像出典: Alibaba Cloud Summit)

通常、スタートアップ プロジェクトはモノリシック アーキテクチャから始まります。

利点は、開発、テスト、デプロイが高速かつ簡単で、WAR パッケージを本番環境に送信するだけで済むことです。

すべてのモジュールが 1 つのパッケージに含まれているため、コンパイルが遅くなり、起動が遅くなり、コードの競合が発生し、コードがマージされるたびに悪夢のような状況になるため、欠点も明らかです。リリース成功率はどうですか?すべては運次第です。

02マイクロサービスアーキテクチャとモノリシックアーキテクチャ

(画像出典: Alibaba Cloud Summit)

複雑さが比較的小さい場合、モノリシック アプリケーションの生産効率は高くなります。複雑さが一定の規模に達すると、モノリシック アプリケーションの生産効率は急激に低下し始めます。現時点では、サービスに分割する方がコスト効率が良いです。

マイクロサービス アーキテクチャが広く認知されている理由は、予測不可能なビジネスの変動性により、継続的に進化し、ビジネスの変化に迅速に適応できるためです。

03モジュール開発

(画像出典: Alibaba Cloud Summit)

マイクロサービス アーキテクチャは、トップレベルのビジネス設計から始まり、ビジネス ラインに応じてモジュールを分割し、プレゼンテーション層、ロジック層、データ層から単一のアプリケーションを独立して分離します。多くの企業が、モノリシック アプリケーションをサービス指向アプリケーションに分割するプロセスを経験しています。ここでは、ビジネスの継続性とデータの整合性に注意を払う必要があります。

04マイクロサービスアーキテクチャの負荷分散の利点

(画像出典: Alibaba Cloud Summit)

これまで、LVS と F5 は、主に電流制限、負荷、セキュリティなどを提供する、アクセス レイヤーでの負荷分散サービスとしてよく使用されていました。

マイクロサービス アーキテクチャでは、ゲートウェイはアクセス レイヤーとして機能し、軽量の負荷分散、プロトコル変換、認証などのサービスを提供します。マイクロサービスには通常、サービス ガバナンス、サービス登録、サービス検出、分離などを提供する DUBBO などのサービス ガバナンス フレームワークがあります。

05データアクセスボトルネックの解決 - データベースの垂直分割

(画像出典: Alibaba Cloud Summit)

分散アーキテクチャはデータ アクセスのボトルネックをどのように解決するのでしょうか? 1 つ目は、データベースの垂直分割です。たとえば、ユーザー、トランザクション、アカウントを独立したデータベースに分割して、データの保存とアクセスの負担を軽減できます。もちろん、プライマリ データベースとバックアップ データベースを使用して、読み取りと書き込みを分離することもできます。

06データアクセスボトルネックの解決 - データベースの水平分割

(画像出典: Alibaba Cloud Summit)

次に、データベースの水平セグメンテーションを実行します。たとえば、トランザクション データベースとデータ テーブルにデータが多すぎる場合は、トランザクション時間に応じてテーブルまたはデータベースを分割できます。分割テーブル数の計算方法は上図の通りです。

テーブルとデータベースを分割すると、データ アクセスとストレージの問題は解決されますが、複数のテーブルとデータベースにまたがる複雑なクエリ シナリオなど、データ クエリに多くの問題が発生する可能性があります。解決策は多数ありますが、通常は、複雑なクエリに ES を使用し、ID でフィルタリングしてからデータベースからデータを取得する (つまり、複雑なクエリを複数のクエリに分割する)、またはデータベースとテーブルを細かく分割せずに、以下で説明する OceanBase などの分散型大規模データベース ソリューションを使用する、といった方法があります。

2. 分散アーキテクチャの実践例 - 分散TAシステム

07従来のTAシステムアーキテクチャ

(画像出典: Alibaba Cloud Summit)

従来の TA システム アーキテクチャでは、シリアル クリアリングの効率が低く、マシンを追加してもパフォーマンスを線形に拡張できません。通常は大規模なトランザクションを使用し、問題が発生した場合はすべてのトランザクションをロールバックします。

08分散TAシステムアーキテクチャ

(画像出典: Alibaba Cloud Summit)

分散型 TA システム アーキテクチャは、より合理的で複雑な構造を備えています。アクセス層、ビジネス サービス層、SOFAStack 層、LAAS、運用保守ツール チェーン、ガバナンス制御に分かれています。

アクセス層: プロトコル変換、アクセス制御、ファイル転送、運用保守ワークベンチが含まれます。

ビジネス サービス レイヤー: つまり、アカウント、トランザクション、請求書、決済などのコア ビジネス ロジック サービスです。

SOFAStack: マイクロサービス フレームワーク、分散トランザクション、タスク スケジューリング、メッセージ キュー、データ エージェント、リンク トラッキングなど、Ant Financial の共通サービス コンポーネントの多くはオープン ソースです。

分散 TA システムによって克服する必要がある技術的な課題。分散清算タスクを効率的に実装するにはどうすればよいでしょうか?分散環境では、アプリケーション処理エラーが発生する可能性が高まります。タスクのクリアの正確性をどのように保証できますか?この問題を解決する方法について話し合いましょう。

09分散タスクスケジューリングプラットフォーム

(画像出典: Alibaba Cloud Summit)

以下をサポートする分散タスク スケジューリング プラットフォーム:

シャーディングをカスタマイズして、クラスター コンピューティング機能を効率的に活用します。

実行中にタスクを一時停止/再開したり、強制的にキャンセルしたりできます。

タスク失敗再試行メカニズムにより、コンピューティング タスク全体の成功が保証されます。

10タスクスケジュールのクリア

(画像出典: Alibaba Cloud Summit)

タスクのスケジュールをクリアするために、アーキテクチャ全体は次のように分割されます: 1) タスクの分割、つまりトランザクション ドキュメントを申請し、特定のロジックに従ってデータ シャーディングを実行します。 2) タスクを実行し、処理されたデータをフローリザーバーに保存する。 3) 取引、決済、経理、会計等のコアサービス

11.清算のためのフォールトトレランスと検証メカニズム

(画像出典: Alibaba Cloud Summit)

清算のフォールト トレランスおよび検証メカニズムには、毎日の初期化、ファイルのインポート、清算処理、利益計算、シェア調整、清算エクスポート、二次清算、利益エクスポートが含まれます。

すべてのステップを修正してやり直すことができます。

ジョブのロールバックは、ファイル、ユーザー、またはバックアップ ポイントごとに実行できます。

メリットとしては、あらゆるプロセスをロールバックしてトランザクションごとに正確にチェックできること、ミドルオフィスユーザーによるロールバックをサポートしているため決済時間が短縮されることです。

3. 分散アーキテクチャにおけるシステムの信頼性と安定性を確保する方法

12グレースケールリリースメカニズム

(画像出典: Alibaba Cloud Summit)

グレースケールリリースメカニズム、プロセスには、ベータリリース、グループリリース、グレースケール転換、および完全リリースが含まれます。

グレースケールクリアリングでは、ユーザーディメンションごとにシャードを柔軟に抽出し、グレースケール時間を短縮できます。

13オンラインフルリンクストレステスト

(画像出典: Alibaba Cloud Summit)

オンライン フルリンク ストレス テストでは、データ アクセス エージェントを介してストレス テスト データがオンライン シャドウ テーブルに入力され、通常のビジネス データには影響しません。フルリンクストレステストの特徴は次のとおりです。

1. ストレス テスト環境では本番環境が再利用されるため、オフラインよりも結果の信頼性が高くなります。

2. ストレス テスト データはマークして実稼働環境に入力することができず、テーブル レベルで分離されます。

14 OceanBase 高可用性メカニズム

(画像出典: Alibaba Cloud Summit)

OceanBase 高可用性メカニズム、Paxos プロトコルに基づく典型的な 3 つのレプリカの展開:

1) 強力なデータ一貫性

2) 継続的な可用性

3) マスターとスタンバイの自動切り替え。

4) 単一のマシン、コンピュータ室、都市レベルの障害: サービスの中断やデータの損失はありません。

OceanBase 分散データベース ソリューションは、商用データベースのマスター スレーブ データベース ソリューションよりも優れており、主に分散データベース、書き込みトランザクションがデータベースの半分以上に到達、データベースの異常がいくつか発生しても業務に影響しない、2 つの場所と 3 つのセンターによるマルチアクティブ、およびグレースケール アップグレードに反映されています。

15 OceanBase 共通展開スキーム

(画像出典: Alibaba Cloud Summit)

OceanBase の導入ソリューションには以下が含まれます。

同じ市内に 3 つのデータセンター、同じ市内に複数のコアデータセンター、30 キロメートル以内、遅延は約 0.5 ~ 2 ミリ秒。

通常の状況では、 2 つの場所にある 3 つのセンターの遅延は、同じ都市にある 3 つのセンターの遅延と一致します。ある都市の ObServer に障害が発生すると、同期の遅延が増加します。

16市内アクティブ・アクティブ災害復旧アーキテクチャ

(画像出典: Alibaba Cloud Summit)

同市内の災害復旧のためのアクティブ-アクティブ アーキテクチャは、主に日常的なトランザクションを処理するメイン コンピュータ ルームをベースとし、少量のトランザクションはバックアップ コンピュータ ルームで実行されます。建築上の特徴は次のとおりです。

1) 横断的な損失を避けるために同じ機械室を優先する

2) アプリケーションへの侵入なし

3) 単一のコンピュータルームのようにアプリケーションを開発および展開する

4) 自動災害復旧スイッチ

<<:  シャーディングのための 9 つの分散主キー ID 生成ソリューション

>>:  クラウド コンピューティングに必要な 5 つの機械学習スキル

推薦する

SEOER初心者はベテランの経験を効果的に活用できるのか

SEO 最適化のベテランと初心者の違いは、ベテランがハイテクな SEO 最適化手法を習得しているかど...

中国の海賊版ソフト王の地位を回復: 海賊版ディスクを販売していたが、クラックの方法を知らなかった

黄元「今年初めに記者から電話インタビューを受けるまで、私は彼について全く印象を持っていませんでした。...

buyvm: ロック解除されたストリーミング VPS を販売中。Netflix\Tiktok、Disneyplus\HBO\HULU\FOX など、米国とカナダの多数のストリーミング メディアに対応

buyvm は、複数のストリーミング メディアのロックを解除し、通常は厳しい IP 要件を持つ多くの...

リースウェブ - 60% オフ/VPS/専用サーバー/オランダ/ドイツ/米国

大手ブランドのリースウェブでは、VPS と専用サーバーを特別価格で提供しています。永久に 40% オ...

Bocai Network: ウェブサイト構築の後期段階で予算が不足することが多いのはなぜでしょうか?

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますウェブサイ...

#干货# iwebfusion: 米国限定サーバー、年末セール、45ドルから、E3-1270v6/i7-7700K/E5-2699v4/AMD Ryzen 9 7950x/Gold 6148

2001年に米国で創業した老舗サーバー販売業者のiwebfusionが、年末在庫処分キャンペーンを開...

BandwagonHost VPS はいかがでしょうか?ロサンゼルス「USCA_8」データセンターのVPSの簡単なレビュー

BandwagonHost VPS はいかがでしょうか?破壊者USCA_8はどうですか? Bandw...

マルチクラウド環境でピークオーケストレーションを実現する方法

ビジネス マネージャーが IT ディレクターにマルチクラウド ソリューションの実装を依頼した場合、そ...

他の類似サイトと差別化する方法

21 世紀に入り、インターネット業界の急速な発展により、同種のウェブマスター間の競争が激化し、偽造や...

rocketvps 高品質 openvz 推奨

rocketvps.com は、アンマネージド VPS 業者であり、knownhost.com (中...

Weiboマーケティングをビジネスに活用する方法

ショートビデオ、セルフメディア、インフルエンサーのためのワンストップサービス1. 企業がWeiboマ...

5A レビュー - 長白山生態観光ネットワーク

国内の5A級観光スポットの情報化建設を調査・研究するため、国内観光情報化研究チーム-智力動力は5Aレ...

ブログを最適化する方法についての簡単な説明

ブログは、定期的に記事を書きたい人にとって素晴らしい出版プラットフォームです。まず、コンテンツの公開...

急成長を遂げているクラウドコンピューティング業界において、上流産業が最も繁栄しているのはなぜでしょうか?

流行の影響により、リモートワーク、オンライン教育、オンラインゲームなどのインターネットアプリケーショ...