Tencent クラウド マイクロサービス プラットフォーム TSF では、リモート マルチアクティブ ユニット化機能が大幅にアップグレードされています

導入

2023 テンセント グローバル デジタル エコシステム カンファレンスは 9 月 7 日と 8 日に無事終了し、40 以上の特別イベントでテンセントの最新の最先端テクノロジー、コア製品、ソリューションが紹介されました。

マイクロサービスとメッセージキューに関する特別セッションでは、Tencent Cloud Microservice Platform TSF のプロダクトマネージャーである Zhang Zhen 氏が、「Tencent Cloud Microservice Platform TSF のリモート マルチアクティブ ユニット化機能のメジャー アップグレード」について素晴らしい講演を行いました。この記事では、Tencent Cloud マイクロサービスのユニット化のベスト プラクティスを詳細にレビューします。

ユニット化されたアーキテクチャの概要

ユニット化とは

現在のサービス指向アーキテクチャから判断すると、従来のアーキテクチャのサービスは階層化されており、各層は異なる分割アルゴリズムを使用し、各層のノード数は異なり、上位層のノードが下位層のノードをランダムに選択します。この不確実性により、上位層のノードが下位層のノードにアクセスするときに、クロスリージョンまたはクロスリージョンの可能性が生じます。リージョンを越えた通話はコストが非常に高く、遅延の問題を解決するだけでなく、データの同期も確保する必要があり、どちらの点も技術的な実装において非常に困難です。

そこで発想を変えて、計画したパスに沿ってリクエストを呼び出せるように、事前に呼び出しパスを設計することで、上記の課題を解決できます。ユニット化アーキテクチャの出現はこの設計に従っており、ユニット化アーキテクチャでは、アクセス層、サービス層、およびデータ層が同じ分割アルゴリズムを使用してコンピューティング リソースとデータ リソースの論理バインディングを実現し、最終的に標準化された処理ユニットを形成します。

ユニットの特徴と種類

ユニット化とは何かを理解したところで、ユニットの特徴や種類を見ていきましょう。

ユニットの特徴

1. 各ユニットにはコンピューティング リソースのセットとデータ リソースのセットが含まれており、同じラベルを使用するなど、論理的な関連付けに同じルールが使用されます。

2. システム事業の規模に応じて、システムは複数のユニットを計画する場合があり、共通の数は 4 ~ 12、あるいはそれ以上になる場合があります。

3. 原則として、ユニット内にデータ リソースは 1 セットのみ存在します。

ユニットの種類

原則として、ユニットのタイプは、ユニット内で実行されるさまざまなサービスに応じて分類されます。たとえば、入力トラフィックの送信に使用されるものはゲートウェイまたはアクセス ユニット、サービスを処理するものはビジネス ユニットと呼ばれます。ユニットに分割でき、独自のデータを持ち、他のビジネスに依存せずにすべてのサービスを完了できるビジネス ユニットを標準ビジネス ユニットと呼びます。分割できず、読み取りが多く書き込みが少ないビジネスをローカル テクニカル ユニットと呼びます。また、システム全体の中には、多くのユニットに依存していて分割できない構成型の業務も一般的に存在しますが、その場合はグローバルユニットに配置されます。

このことからもわかるように、ユニット化されたアーキテクチャを採用しようと思ったら、それほど簡単な作業ではなく、一連のアーキテクチャ計画とビジネス変革が必要となります。

では、ユニット化のメリットとは何でしょうか?これはユニット化の価値についてです。

ユニット化の価値

一般に、ビジネス規模が徐々に拡大し、アーキテクチャの複雑さがますます高くなるにつれて、データベース接続の数、標準化された拡張、マシン ルーム間の安定性およびパフォーマンスの問題が徐々に顕著になります。

データベース接続の問題

まず、データベース接続数の問題を見てみましょう。クラウド ネイティブのコンテキストでは、アプリケーションは簡単に水平拡張を実現できますが、拡張されたインスタンスごとにデータベースへの接続が多数生成されるため、ビジネス量が増加するにつれて、データベース接続の上限がクラスター拡張のボトルネックになることがよくあります。分散データベースを使用しない場合、この問題はユニット化することで解決できます。データリソースと論理リソースがバインドされると、各ユニットのデータリソースが決定され、コンピューティングリソースも決定されます。データベース接続数をユニットで制御し、ユニット拡張による分散システム全体の拡張を実現します。

分散運用、保守、拡張の問題

2 番目の質問、分散運用と保守、および容量拡張について見てみましょう。一般に、分散システムはアラームの監視と手動介入によって拡張されますが、拡張のタイミングと容量は経験に基づいて判断する必要があり、正確かつタイムリーではない可能性があります。ユニット化アーキテクチャを採用すると、ユニット次元での標準的な拡張により、すっきりとした統一的なアーキテクチャと運用保守の標準化が実現でき、ユニットの業務量に応じた事前の拡張計画も実現できるため、本当に必要なものを把握することができます。操作前と操作中に行うこと。

マシンルーム間のパフォーマンスの問題

3 番目の問題は、マシンルーム間のパフォーマンスの問題です。マイクロサービス クラスターでは、通常、アプリケーションはステートレスであるため、トラフィックが無差別に分散されます。アクセス層ゲートウェイがトラフィックをサービス層に分散すると、クロスセンター アクセスが発生し、システムの安定性とパフォーマンスに大きな影響を与えます。アーキテクチャが使用されている場合、ユニット化されたフローの閉ループ機能がこの問題を非常にうまく解決できます。

異なる場所での複数のアクティビティの問題

最後の質問は、別の場所でもっと人生を生きることです。アーキテクチャが徐々に遠隔地でのマルチアクティビティに進化すると、上記の安定性とパフォーマンスの問題はオフサイトシナリオで無限に増幅されるため、ユニット化も遠隔地でのマルチアクティビティを実現するための重要なソリューションです。

次に、Tencent Cloud が提供するユニット化ソリューション全体を見てみましょう。

ユニット化されたアーキテクチャ ソリューション

Tencent Cloud ユニットの設計コンセプト

Tencent Cloud は、広範な実践経験を通じて Tencent Cloud ユニット アーキテクチャを要約し、洗練させました。Tencent Cloud ユニット アーキテクチャは、上から下までアクセス層、アプリケーション層、データ層、ファシリティ層に分かれています。

アクセス層は、トラフィックの受信、トラフィックの識別、およびトラフィックの転送を担当します。識別されたトラフィックは、処理のためにアプリケーション層の対応するユニットに転送されます。ユニットは顧客のディメンションに従って分割されます。ほとんどのシナリオでは、単一の顧客のトランザクションはユニット内の閉ループで処理され、少数のクロストランザクションは、顧客のトランザクションは複数のユニットにわたって処理されます。

システム全体のユニット化されたアーキテクチャは、あらゆるレベルの包括的な設計をカバーする複雑なシステム エンジニアリングであり、Tencent の製品はユニット化されたアトミック機能のサポートを提供し、ISV パートナーはアトミック機能に基づいたサービスのカプセル化を実装します。したがって、Tencent のユニット化された設計は、オープン、軽量、柔軟な配信という設計と配信の概念を常に遵守しています。

Tencent Cloud アプリケーションユニットのアーキテクチャ

コア システム アプリケーション全体の観点から、アプリケーションはビジネス ロジックに従ってさまざまなユニットに分割できます。最上位は、アクセスと送信機能を担当するアクセス層のアクセス ユニット ADU です。アプリケーション層では、サービスの分割性に応じて SDU、LDU、RDU に分割されます。最下層はパブリック コンポーネント GDU です。ビジネスの単位変換のプロセス中に、このルールに従って単位を定義および分割できます。

アクセス ユニット (ADU): アクセスおよび発信機能を担当します。

標準処理ユニット (SDU): ビジネス処理機能を担当します。

ローカル ユニット (LDU): シングル AZ 共有サービス機能を提供します。

都市全体のユニット (RDU): 都市全体の共有サービス機能を提供します。

グローバル ユニット (GDU): リモート マルチアクティブ アーキテクチャにおけるグローバル タイプのサービス。

Tencent クラウド マイクロサービス プラットフォーム (TSF) の概要

ユニット化の全体的な概念を念頭に置いて、マイクロサービス レベルでのユニット化のベスト プラクティスを見てみましょう。

TSF: すぐに使えるマイクロサービス プラットフォーム

Tencent Cloud Microservice Platform (Tencent Service Framework、TSF) は、Spring Cloud や Service Mesh などのさまざまなマイクロサービス アーキテクチャと互換性のある商用 PaaS プラットフォーム フレームワークであり、ワンストップのマイクロサービスのフル ライフ サイクル管理機能、データ ベースの運用サポート、およびマルチ-次元のアプリケーションとサービスのガバナンス。コードレスの変換と移行、迅速なビジネス展開、きめ細かいサービス ガバナンス、迅速な問題特定とトラブルシューティング、軽量な運用とメンテナンスなどの機能を備えています。

TSFコアの特性と価値 - 標準化と多様化

標準化を使用する

TSF は、標準化されたサービス アクセス仕様、統一された標準操作エクスペリエンス、統一された登録および構成センター サービス、および標準化された導入管理を提供し、お客様にアクセス、操作、および構成における一貫したエクスペリエンスを提供します。

技術の多様化

TSF は、SpringCloud、Dubbo、Service Mesh、GRPC、Spring Cloud などの主流のフレームワークと互換性があります。

フルスタックの機能

TSF マイクロサービス プラットフォームは、完全な権限管理および制御システムを備え、多様なサービス ガバナンス機能を提供し、技術システムは自律的かつ制御可能で、パフォーマンス チューニングと運用および保守のトラブルシューティングをサポートし、包括的なサービス ガバナンスとフルサイクル管理機能を備えています。ユーザーの要件を満たすことができるマイクロサービス プラットフォームの要求。

近年、ますます多くの顧客がアーキテクチャをアップグレードし、単一アプリケーションからマイクロサービス アプリケーションに変換し、オフクラウドからクラウドに移行するにつれて、開発、テスト、リリース、実稼働などの段階の中核要件をカバーできる製品が求められています。 TSF は必須の機能となり、上記の各段階で包括的な管理機能を提供し、多くの顧客にとってワンストップ マイクロサービス プラットフォームを購入する最初の選択肢となります。

TSF は常に高可用性とユニット化を模索しており、プラットフォームの安定性と信頼性を確保するために基盤となるアーキテクチャを継続的に最適化することに取り組んでいます。同時に、当社は高可用性を常に研究および実践し、標準化された製品機能を提供し、より安定した信頼性の高い快適なエクスペリエンスをお客様に提供します。

TSF のユニット化された製品機能

TSF は顧客とともに成長し、さまざまな顧客の要求に応じて、単一センター、同じ都市内の複数のアクティビティ、2 か所の 3 つのセンター、異なる場所の複数のアクティビティに至るまで、進化のさまざまな段階で対応するソリューションを提供します。現在、大手金融機関がリモート マルチアクティブ ユニット化アーキテクチャの実験を行っているため、ユーザーによるユニット化アーキテクチャの探索と実践を支援する TSF リモート マルチアクティブ ユニット化製品機能もリリースしました。

次に、いくつかの重要な段階について簡単に説明します。

同じ都市でのより多くの生活

TSF は長い間、同じ都市内で複数のサービスを実行できます。これは、ほとんどのマイクロサービス顧客の高可用性要件でもあります。

マルチライフとは何ですか?

同じ都市内のマルチアクティブは、実際にはクラウド ネイティブ アーキテクチャの下でのマルチアクティブ ソリューションです。通常、同じリージョンに複数のアベイラビリティ ゾーンがあります。たとえば、アベイラビリティ ゾーン A と B があります。同じサービスをデプロイし、アクティブにします。同じ都市でアクティブであり、お互いがバックアップとして機能します。

同一都市のアクティブ/アクティブ アーキテクチャは実装が容易ですが、コンピューター室の障害にのみ対応できます。地域全体がダウンした場合、サービスは依然として利用できません。現時点では、2 か所に 3 つのセンターが必要です。

2か所3センター(ユニット化)

一般に、2 か所 3 センターを実現するには、リモートディザスタリカバリとユニット化の 2 つの方法があり、現在、どちらのアーキテクチャもお客様に使用されています。違いは、ユニット化モデルでは、ユニット化によってもたらされる利点の一部が得られることです。しかし、遠隔地は災害復旧に使用されるため、遊休リソースの問題は深刻です。

もっと違う場所に住もう

遠隔地でのマルチアクティビティの課題は、アイドル状態のリモート リソースをアクティブ化することであるため、ユニット化は、リモート シナリオでのデータ同期とアクセス遅延を解決する最良の方法です。リモート マルチアクティブ ユニット化では、複数の場所にあるサービスがビジネス サービスを提供できると同時に、ユニット トラフィックの閉ループ特性により、リモート アクセスの可能性が大幅に減少し、データを完全に同期する必要がありません。リアルタイムで、地域を越えた高可用性ユニット化を可能にします。

TSF ユニット化された製品機能マトリックス

お客様によるユニット化されたアーキテクチャの使用を支援するために、TSF は、ユニット化された管理、高可用性の災害復旧、効率的な運用とメンテナンスの 3 つの主要なシナリオをカバーする、対応する製品機能をリリースしました。

ユニット化を実装する前に、まずアーキテクチャを計画し、ユニット数を設計し、アクセス層のユニット化ゲートウェイ、アプリケーション層のマイクロサービス プラットフォーム、データ層のメッセージ キュー、データベースなどのユニット化された製品を追加する必要があります。実装中に、ユニット化されたルールを構成し、個々のコンポーネントにプッシュする必要があります。単位グレースケールが必要な場合は、グレースケール単位とグレースケール ルールの構成もサポートされます。

基本的な機能に加えて、ユニット化時の災害復旧と可観測性もユニット化構築の焦点です。災害復旧シナリオでは、TSF は災害復旧ユニット構成、ワンクリック災害復旧切り替え、災害復旧シミュレーション訓練などの複数の災害復旧機能を提供します。運用とメンテナンスの面では、統一されたユニットの監視と警報をサポートし、ユニット間またはコンピュータ ルーム間のリクエストを監視および追跡します。

以下では、いくつかの主要な設計ポイントを見てみましょう。

● 統一されたルーティング

クライアント要求にはラベルが含まれており、ユニット化されたゲートウェイにルーティングされ、ゲートウェイはラベルに基づいてターゲット ユニットを計算します。TSF は、呼び出しがユニット内であるかユニット間であるかを識別し、要求を対応するユニットに転送します。同じサービスへの電話の順序は、最初にユニット内で電話し、次にセンターに電話し、最後に同じ市内のセンターに電話します。

●単位階調

以上がユニット化配線の主な処理ですが、次にユニットグレースケールの実装を見ていきます。標準のマイクロサービス アーキテクチャでは、グレースケール リリースは主にフレームワークの機能に依存します。アプリケーション間のバージョン分離により、トラフィックはバージョン タグに従って指定されたアプリケーション バージョン クラスターに送信され、トラフィック比率制御により、運用トラフィック内のリクエストの一部をグレースケール アプリケーション クラスターで処理できます。

ユニット化されたシナリオでは、最初に 1 ~ 2 のグレースケール単位を設定し、次にグレースケールの次元を明確にすることができます。たとえば、一般的なものには、顧客番号や顧客ラベルのグレースケールの指定などが含まれます。ゲートウェイがユニット ルーティング計算を実行する前に、最初にグレースケール テーブルが照会され、要求された特徴がグレースケール ルールに一致する場合、テーブルで定義されたユニットに従って直接ルーティングされ、対応するグレースケール ユニットに転送されてユニット グレースケールが完成します。

● 統合された災害復旧

次に、ユニット化された災害復旧について見てみましょう。

リモート マルチアクティブ シナリオでは、ユニットに障害が発生した場合、サービスの継続性を確保するために、そのユニットのトラフィックをできるだけ早く他のユニットに切り替える必要があります。アーキテクチャ計画中に相互バックアップ ユニット テーブルを構成して、ユニット間の相互バックアップ関係を確立できます。いずれかのユニットに障害が発生すると、ステータスを更新し、トラフィックをバックアップ ユニットに転送することによってルーティングが調整されます。スイッチオーバーが発生すると、データベースはスタンバイ ユニットのコピーをプライマリ コピーに調整してサービスを提供します。

たとえば、この図に示すように、ユニット 1 に障害が発生した場合、ユニット 1 のトラフィックが停止され、ユニット 1 に対応する相互バックアップ ユニット情報が取得されます (ユニット 5)。データベースのマスター/スタンバイ切り替えを待ちます。完了するには、グローバル ルートを更新し、トラフィックを転送します。ユニット 5 に進みます。このとき、ユニット 5 は、自身のビジネス トラフィックを伝送することに加えて、ユニット 1 のビジネス トラフィックも伝送します。ユニット 1 が障害から回復すると、スイッチバックを通じてゲートウェイ層のルーティングがユニット 1 に調整されます。これにより、ディザスタリカバリ時のユニット切り替えとスイッチバックが完了します。

要約する

この記事はユニット化から始まり、まずユニット化の概念と価値、およびユニット化に対する Tencent の全体的なソリューションを紹介します。次に、マイクロサービスの分野に焦点を当て、テンセントのマイクロサービス プラットフォーム TSF とユニット化をサポートする TSF の製品機能を紹介し、ユニット ルーティング、ユニット グレースケール、ディザスタ リカバリ スイッチングの 3 つのコア シナリオに焦点を当てました。

馬に乗って疾走し、道を先導するために私のところに来てください、ダオフ。Tencent Cloud マイクロサービス プラットフォーム TSF のリモート マルチアクティブ ユニット機能のアップグレードは、製品開発における小さな一歩にすぎませんが、マイクロサービス チームは、将来的には製品をさらに磨き上げ、より多くの顧客のニーズに応えたいと考えています。

Lei Jun氏はXiaomiのThePaper OSの完全なシステムアーキテクチャを発表し、最下層が完全に再構築されたと述べ、 Yuque氏は10月23日に障害の原因と修復プロセスを発表 Microsoft CEOのナデラ氏「Windows Phoneとモバイル事業を放棄したのは間違った決断だった」 . Java 11 と Java 17 の使用率は両方とも Java 8 を上回りました . Hugging Face はアクセスを制限されました. Yuque ネットワークの停止は約 10 時間続きましたが、現在は通常に戻っています. Oracle が Visual Studio Code 用の Java 開発拡張機能を開始しました. National Data Administration が正式に マスク氏、ウィキペディアを「魏事百科事典」に改名したら10億寄付 USDMySQL 8.2.0 GAを発表
{{名前}}
{{名前}}

おすすめ

転載: my.oschina.net/u/4587289/blog/10111770