テンセントがクラウドへのビジネス移行を文書化: サーバーレスアーキテクチャアプリケーションのベストプラクティス

テンセントがクラウドへのビジネス移行を文書化: サーバーレスアーキテクチャアプリケーションのベストプラクティス

ここ2年ほどで、国産のドキュメントSaaS製品が多数登場し、クラウドドキュメントの共同作業はクラウド時代のオフィスワークのツールや方法となってきました。従来のオフライン オフィス ソフトウェアとは異なり、共同クラウド ドキュメントは共同コミュニケーションと効率性に重点を置いています。ツール製品として、性能や体験にも重点を置いています。つい最近、「命を救う24時間のドキュメント」が友人の間で話題になりました。河南省の大雨災害の際、Tencent Docs は被災地のニーズに迅速に対応し、安定性を向上させ、製品体験を確保しました。

Tencent Docs は、QQ ファミリーのチームコラボレーション IM ソフトウェアである TIM のオンライン ドキュメント モジュールから生まれました。技術アーキテクチャはもともとオープンソース ソフトウェアに基づいて構築されました。ビジネスの急速な発展により、ビジネスニーズを完全に満たすことができなくなり、大きな技術的負債が蓄積されました。慎重な議論の末、チームはボトムアップで始めてモジュールに分割し、技術システム全体を徐々に再構築することを決定しました。技術の反復プロセスにおいて、チームは業界の先進的かつ成熟した技術ソリューションを常に模索し、試行しています。

Tencent Docs の技術システム全体は、画像認識、SSR、スクリーンショット、ドキュメント プレビューなど、Tencent Docs にビジネス サポートを提供するための多くのマイクロサービスを統合しています。これらのマイクロサービスでは、スケーラビリティ、メンテナンスの容易さ、開発コストの削減という目標を達成するために、効率性とコスト要件に基づいたソリューションを検討する必要があります。同社の自社開発クラウドコンピューティングの波を受けて、最近の開発では、チームは複数のマイクロサービスプロジェクトでTencent Cloud Serverlessアーキテクチャを徹底的に活用し、ビジネスニーズを満たし、良好な結果を達成しました。

01. Tencent Documents x サーバーレスクラウド機能マルチシナリオアプリケーション

1. トラフィックのピークと谷への対処

オフィス製品には明らかなトラフィックの流れがあります。たとえば、午前 8 時から午後 12 時と午後 2 時から午後 6 時までは交通量が比較的多くなります。その他の時間帯、特に早朝は交通量が少ないです。ユーザー数が急増するにつれて、この潮流パターンは特に顕著になります。ピーク時には、大量のユーザーによるリアルタイムの変更により、サーバーに多大な負荷がかかります。

従来のアーキテクチャでは、仮想マシンを追加することでアプリケーションのスケーラビリティを実現できます。しかし、予測容量が不十分だったため、ビジネス トラフィックのピーク時に多数のユーザーがリクエスト タイムアウトを経験し、ブランドの評判が損なわれ、ユーザーが失われるという事態が発生しました。仮想マシンインスタンスを作成することで容量を拡張できますが、多くの追加構成が必要になります。アプリケーションには、最下層にインストールする必要がある依存フレームワークまたは言語ランタイムが多数あります。インストールが完了したら、アプリケーションを構成してデプロイする必要があります。このサイクルには少なくとも1〜2時間かかります。この場合、従来のデプロイメント アーキテクチャではリソースとトラフィックを一致させることができません。

サーバーレス ソリューション Tencent Docs は、サーバーレス クラウド機能を使用してドキュメント ページの直接出力サービスを構築し、ドキュメント コンテンツのレンダリング機能を関数として実装し、クラウド機能環境に展開します。ドキュメント業務のトラフィックが急増すると、クラウド機能の負荷分散システムが自動的に実行環境を割り当て、大量のユーザーによって引き起こされるコンテンツ更新要求の負荷を処理します。動的な拡張および縮小機能により、マイクロサービスに最も合理的なリソース割り当てが実現します。同時に、クラウド関数の事前設定の同時実行を設定することで、複数の関数インスタンスを事前に起動してクラウド関数のアクティビティを維持し、コールドスタートを排除し、動作環境とビジネスコードの初期化にかかる時間を短縮できます。

2. SSRフロントエンドレンダリング

Tencent Docs はリリース以来、月間アクティブ ユーザー数が数千万人に達しています。ユーザーがページを開いたときにページの内容をすぐに確認できるようにするために、ブラウザは HTML を直接解析し、ページを表示するための文字列テンプレートを直接出力します。トラフィックの急増により、クラスターの負荷、フロントエンドのレンダリング負荷の増加、最初の画面の読み込み時間の遅延などの問題が発生しました。 SSR チームは、スケーラビリティ、メンテナンスの容易さ、開発コストの削減という目標を達成するために、ドキュメントとテーブルのページ コンテンツを処理する、弾力性と可用性に優れたダイレクト アウト解析サービスのセットを実装する必要があります。ドキュメントのレンダリング機能は、ほぼ完全にフロントエンドの学生が担当しており、彼らのほとんどはサーバーサイドの知識が比較的浅く、サービスの開発と運用の経験がほとんどありません。長期的な運用と保守のコストは、新しいアーキテクチャ設計にとって重要な評価要素であり、フロントエンド チームがビジネス ロジック自体にさらに集中できるようになります。

サーバーレス ソリューション SSR (サーバー側レンダリング) では、ページをレンダリングするために Node.js サービスに依存する必要があり、静的ファイルのみを提供する CSR (クライアント側レンダリング) アプリケーションよりも多くのサーバー CPU リソースが必要になります。サーバーレス ソリューションの助けにより、フロントエンドの同僚は SSR サーバーの展開、運用と保守、拡張について心配する必要がなくなります。基盤となるサービスはクラウド機能を通じてカプセル化されるため、導入および運用コストが大幅に削減され、ビジネス開発に重点が置かれ、開発効率が向上します。

新しい Serverless Web Funciton サービス開発モデルでは、リスニング ポートを変更するだけで、現在人気の Node.js フレームワークをクラウド上に直接デプロイでき、運用・保守の自由度、コストの低さ、オンデマンドの拡張・縮小など、Serverless テクノロジーの多くのメリットを享受できます。ぜひ体験してみてください。

3. 外部サービスコール - OCR画像認識

Tencent Docs Slides は数式の編集機能をサポートしています。 OCR 画像認識は、Tencent Docs Slides と外部 OCR サービス機能を組み合わせて、ドキュメント内の数式画像を数式に変換し、ユーザーが公開編集しやすくなります。問題は、外部で提供される OCR サービスには制限があり、フロントエンドのリクエストをサポートせず、サーバー側のリクエストのみをサポートしていることです。従来のソリューションでは、バックエンドのスタッフがソリューションにアクセスする必要があり、人員のスケジュールやドッキングなどのプロジェクト管理の複雑さが増します。

サーバーレス ソリューション Tencent Docs は、クラウド機能 SCF をレイヤーとして使用して外部から提供された OCR を転送し、その後、Tencent Docs は共同デバッグ クラウド機能のインターフェースに接続します。これにより、外部サービスの制限が解決され、バックエンドの開発リソースが節約されます。フロントエンドのビジネス開発者自身が外部サービスに素早く接続できるため、開発効率が大幅に向上します。

4. プラグインセンター - サードパーティのサービスへのアクセス

Tencent Docs プラグイン 1.0 のソリューションは、ドキュメント フロントエンドをフロントエンド プラグイン SDK にカプセル化することに基づいています。社内プラグイン業務がドキュメント実装と密接に結びついている前提では、ドキュメント機能を安全かつ体系的に外部に提供することができません。フロントエンド ドキュメントの編集機能を継続的に開放すると、フロントエンド SDK とドキュメント側の実装が徐々に肥大化し、最終的には Giant Stone アプリケーションにおける長期的な技術的負債になる可能性があります。

Serverless Solution Plugin 2.0 の中核は、バックグラウンド コンテンツ編集に基づくオープン機能です。ドキュメントのデータ応答更新メカニズムを利用することで、クラウド機能はフロントエンド - クラウド機能 - バックエンド コンテンツ編集の重要なリンクとなり、オープン実装をフロントエンドから分離し、クラウド機能を通じてオープン化します。同時に、サービスによって通話量は異なります。クラウド機能には、自然なサービス分離と動的な修復機能があります。異なるサービスを相互に分離し、個別にアップグレードおよび拡張することで、サービス間の影響を回避することができます。

5. グレースケールのリリースと環境の分離

アプリケーションのバージョンを更新および切り替える際には、オンライン システム ビジネス全体の安定性を確保し、ビジネス コードの問題を迅速に発見するために、R&D チームはグレースケール リリース方式を採用してテストと反復を実行します。クラウド機能を通じて特定のバージョンのトラフィックを段階的に切り替えることで、特定のバージョンのスムーズなグレースケールを実現し、新しくリリースされたバージョンを制御可能な範囲内でリリースおよび反復できるようになります。

テスト環境と本番環境は、クラウド機能のバージョンによって分離されます。 $LASTEST のバージョンをオンラインで固定化することで、テスト環境の API ゲートウェイを TEST バージョンに接続し、本番環境を固定化バージョンに接続して、本番環境のコード品質と安全性を確保できます。

02. サーバーレスアーキテクチャソリューションの利点:R&D効率の向上

ローカル開発とテストの後、CI/CD プロセスがトリガーされ、デプロイメント プロセスが完了します。同時に、Cloud Functions はログ監視、グレースケール、リリース ロールバックなどの機能を提供し、インターフェースやプラグインを通じて完全に自動化されたプロセスを実現できます。クラウド機能は、負荷分散と柔軟なスケーリングが組み込まれた Tencent Cloud のプロフェッショナル セキュリティ クラスターに基づいています。開発者は基本的に運用や保守の問題を心配する必要がなくなり、ビジネスの最適化に集中する時間を増やすことができます。サーバーサイドの経験が少ないフロントエンド開発エンジニアでも、より簡単にサービスを開発・保守できるようになります。

コスト削減

クラウド機能は 1 ミリ秒単位の課金粒度を実装し、実際の使用量に基づいて課金するため、ユーザーは大幅なコスト上のメリットを得ることができます。また、トラフィックがないときには自動的にスケールダウンできるため、導入コストを節約できます。

高い柔軟性

Tencent Cloud Function のマルチバージョン機能により、複数のオンライン バージョンを柔軟に展開できます。ゲートウェイと連携することで、複数のバージョンを容易に共存させ、カスタマイズされた処理機能を提供することができます。

ビジネスの反復を加速

サーバーレスソリューションを導入してからは、運用・保守・監視の負担が大幅に軽減されました。開発者はソリューションの最適化と技術的な反復にさらに重点を置き、製品の機能を迅速に検証し、チームの技術ビジネスの開発を促進できます。

03. Tencent Documents x サーバーレスアーキテクチャのさらなるシナリオ探索

現在のブラウザ環境にはパフォーマンスのボトルネックがあります。より複雑な非同期ロジックの場合は、クラウド関数を使用してロジックを処理することを検討できます。次に、Tencent Docs はフロントエンド ブラウザ ロジックを Fass し、フロントエンドからサーバーに分離して、ブラウザのパフォーマンス負荷を軽減する予定です。

コラボレーティブオフィストラックでは、チームのビジネスは依然として急速に成長しています。急速に変化する技術の反復に直面し、低コスト、迅速な開発、迅速な展開、サーバーレス ソリューションの迅速な立ち上げが、マイクロサービス テクノロジの選択におけるチームの優先アーキテクチャになりました。 SCF の助けにより、チームはバックグラウンド コンピューティング リソースについて心配する必要がなくなり、予期しないイベントにも自信を持って対処できるようになりました。今後、Tencent Docs オープンプラットフォームの構築に伴い、クラウド機能 SCF を使用するマイクロサービスが Tencent Docs の業務でさらに多く実行され、大多数のユーザーに優れたサービスが提供されるようになります。

<<:  エッジアプリケーションテクノロジーはあらゆる業界に利益をもたらす

>>:  マルチクラウドでマシンIDを保護する5つのテクニック

推薦する

Long Jun: ウェブサイト SEO 最適化テクニックの完全マニュアル

みなさんこんにちは。私は湖南SEO(HNT)のウェブマスター、Long Junです。本日、編集者はウ...

公式サイトの訪問者の定着率を高める方法

実は、ウェブサイト訪問者の粘着性を高めることについての記事を長い間書きたかったのですが、他のことで忙...

従来のコールセンターはボトルネックに頻繁に直面しており、ハイブリッドクラウドソリューションが未来のソリューションです。

工業情報化部は昨年以来、電話利用者の実名認証と400のコールセンターのコンプライアンスを規制する取り...

IDC: クラウド コンピューティングにより、今後 4 年間で少なくとも 10 億トンの二酸化炭素排出量が削減される

[[386723]]最近、IDC はクラウド コンピューティング分野における最新の予測を発表しました...

クラウドコンピューティングの PAAS と SAAS の違いを 1 つの記事で理解する

クラウド コンピューティングが非常に普及している今日、クラウド ホストをレンタルするだけでクラウド ...

Huayun Data が VMware と提携し、安全で信頼性の高い金融クラウドの構築を支援

インターネット、特にモバイル インターネットの急速な発展に伴い、金融機関はインターネット シナリオへ...

Apple App Store では悪意のあるレビューの投稿が広まり、大手メーカーのゲームが多数攻撃されています。

ひどい扱いを受けている? App Storeで悪質なレビュー操作が蔓延Game Gyroは、Appl...

ウェブサイトの計画をうまく進めたい場合、どこから始めればよいでしょうか?

ウェブサイトの計画は、優れたウェブサイトを構築するための重要なステップの 1 つです。優れたウェブサ...

クラウド コンピューティングがネイティブの需要に向かって進むとき、IT インフラストラクチャはどのようにアップグレードされるべきでしょうか?

クラウド ネイティブは、企業がビジネスを展開する際の主な選択肢の 1 つになっています。利点は、アプ...

Hujiang.comの副社長がデジタル出版分野におけるHujiang.comの鮮明な事例を紹介

12月15日、internet2share.comは上海でデジタル出版の今後の発展の道についてのサロ...

読んだ後の私の洞察を共有する(ロングテール理論)

クリス・アンダーソンの著書「ロングテール理論」を読んだことがあるかどうかはわかりません。この本は数年...

gcore ベーシック: クラウド サーバーは月額 5 ユーロから、帯域幅 200M、トラフィック無制限、オランダ/ドイツ/米国/香港/シンガポール

gcore は、高性能、低レイテンシ、国際クラウドおよびエッジ ソリューションを提供するヨーロッパの...

SEOドメイン名は小さいですが、広範囲に影響を及ぼします

ウェブサイトの SEO を改善するには、まずドメイン名から始める必要があります。ドメイン名は短いもの...

情報漏洩事件の容疑者2人が拘束される:昼はエンジニア、夜はハッカー

実際、法的意識の弱さと遊び心により、インターネット企業のセキュリティに携わる技術スタッフやセキュリテ...

クレイジーマン:SEOの関連性について

SEOは関連性が重要検索エンジンでキーワードを検索すると、通常、多数のページが返されます。これらのペ...