New Oriental's Road to Serverless Practice

New Oriental Education and Technology Group は、生徒の総合的な成長を核とし、テクノロジーを原動力とする総合教育グループとして位置づけられています。New Oriental のオンライン教育事業におけるクラウド教室システムは、ライブ配信、動画トランスコーディング、オンデマンド配信など、New Oriental のすべてのオンライン教育シーンを支えています。しかし、ビジネス規模の拡大に伴い、自社データセンターのリソース利用率の低さが、ライブ配信の録画・配信および動画トランスコーディングタスク処理プラットフォームにおける顕著なピーク・オフピーク特性により、ビジネスの中心的な課題となっていました。

コンピューティングリソースの利用率を向上させ、コスト削減と効率化の目標を達成するため、New Oriental は数々の試行錯誤を経てサーバーレスの実践への道を歩み始めました。以下は、New Oriental Education and Technology Group のクラウド教室ライブ配信プラットフォームの技術責任者である Mo Jingguo 氏が Yunqi Conference で発表した内容です。

予測不能なビジネスボリュームにどう対応するか

New Oriental は、自社のオンライン教育事業にクラウド教室プラットフォームを活用するだけでなく、Meike Cloud Live を通じてライブ配信機能を外部にも公開しています。クラウド教室ライブ配信プラットフォームは、主に 4 つのビジネスモードを支えています。

・クラウド教室:オンラインでのインタラクティブなライブ授業。インタラクティブ性を重視します。

・クラウドオンデマンド:録画授業です。

・クラウドライブ配信:大規模ライブ配信。主に配信者が中心となります。

・スマート教室:ソフトウェアとハードウェアを組み合わせた、ダブルティーチャーモデルに似た教育モデルを提供します。

ライブ配信と録画配信の組み合わせは、New Oriental が推進するコースの主要な配信形態です。ライブ配信コースはインタラクティブ性が高く、優れた授業体験を実現し、生徒の学習意欲を高めることができます。教師は生徒からのリアルタイムのフィードバックやインタラクションを通じて直接評価でき、授業環境を適時に調整できるため、より的を絞った指導が可能になります。インタラクションや授業中の Q&A を通じて、教育プロセスと効果をより確実に担保できます。ライブ配信コースは低年齢の生徒に最適です。

高校生以上の生徒には、録画配信コースがより適しています。録画配信コースの特徴は、柔軟な学習時間にあり、生徒が自主的に学習コンテンツを検索して選択的に学習できます。録画配信コースの強みは、教育コンテンツを継続的に磨き上げ、編集して高品質なコースを制作できる点であり、その需要は徐々に高まっています。当初、チームはクライアント側の録画技術を採用し、講師のライブ配信を録画して生徒が繰り返し視聴できるようにしていました。しかし、この方式はエラー率が高く、CPU 使用率も高く、録画 UI レイアウトの柔軟なカスタマイズができず、表示されたものしか録画できないという制約がありました。この方式では低年齢層のコースニーズにしか対応できませんでした。今年、New Oriental は大学生向けのオンライン教育事業に参入し、録画配信コースの品質により高い要求を突きつけられました。チームはサーバー側録画による解決策を検討し始めました。サーバー側録画の 2 つの核心は、ライブ録画と動画の標準化生産です。ビジネスモデル上、ビジネスボリュームを正確に予測することは困難です。そのため、コンピューティングの柔軟性を実現することが、New Oriental の重要な技術課題となっています。

3 つの選択肢:ファンクションコンピューティングが選ばれる理由

サーバー側録画の問題を解決するため、チームには 3 つの技術ルートが候補に挙がりました。

・ECS を用いた自社構築。このソリューションの利点は柔軟性が高いことですが、問題はコンピューティングが柔軟でないことです。クラウドプロバイダーは ECS リソースのエラスティック割り当て API を提供していますが、コンピューティングの柔軟性を完全に実現するには膨大な開発工数が必要です。同時に、その後の運用保守は比較的複雑で、リソースコストも高く、標準化が困難です。

・クラウド動画 SaaS ソリューション。このソリューションの利点は、標準化されたサービスにより開発投資が少なく、運用保守作業も少ないことです。しかし、柔軟性が低く、リソースコストが高く、さらなる性能最適化が困難であることが課題でした。成熟した SaaS プロバイダーを探して迅速にビジネスを支えてもらいたいと考えましたが、いくつかのプラットフォームを試した結果、成熟度や技術指標が要件を満たしませんでした。

・Alibaba Cloud の Function Compute を試したところ、このサーバーレスコンピューティング製品がコンピューティングの弾力性ニーズを完全に満たせることがわかりました。ビジネスロジックに集中してプラットフォーム上で開発でき、開発投資は少なく、運用保守は不要です。開発プロセスは独立して制御可能で、柔軟性が高く、必要なときにだけリソースを使用できる従量課金モデルにより使用コストを大幅に削減でき、標準化も比較的容易です。ただし、ファンクションコンピューティングは比較的新しい技術であり、チームが習熟するまでにある程度の期間が必要です。

比較検討の結果、New Oriental チームはファンクションコンピューティングを採用してサーバー側録画の問題を解決することを選択しました。

New Oriental のサーバーレス実践

録画・配信のトランスコーディング、ファンクションコンピューティング

まず、動画の録画・配信トランスコーディングのシナリオで最初の試みを行いました。録画・配信トランスコーディングのコア要件は、ライブストリームをリアルタイムでトランスコーディングし、標準的な動画形式として保存して、後続の処理や利用に備えることです。

このシナリオで、ファンクションコンピューティングがもたらす柔軟性のメリットを初めて実感しました。講師が入室してトランスコーディングリクエストを開始すると、Function Compute インスタンスを即座に起動してトランスコーディングを実行できます。授業終了時にトランスコーディングタスクを終了し、一時的な録画結果をクラウドストレージにアップロードした時点で、Function Compute インスタンスを即座に解放でき、コンピューティングリソースの無駄は一切生じません。

録画・配信トランスコーディングプロジェクトでのファンクションコンピューティング適用経験により、ファンクションコンピューティングソリューションへの自信が一層深まりました。

ライブ配信と組み合わせたトランスコーディングのファンクションコンピューティングソリューション

その後、クラウド録画プロジェクトを立ち上げました。Chrome ブラウザを使用してライブルームに参加し、ブラウザインターフェイスのスクリーンショットを撮影する方式です。このソリューションの鍵は、ブラウザインスタンスを柔軟に提供することにあります。

そのため、Alibaba Cloud のファンクションコンピューティングを使用して Linux コンテナを起動し、Linux コンテナ上で Chrome ブラウザを実行することで、柔軟なブラウザインスタンスを提供しています。

録画プロセス全体の流れは以下の通りです。講師が教室に入室後、音声・動画のストリーミングとホワイトボード操作を開始します。同時に、録画プラットフォームが録画リクエストを送信し、ファンクションコンピューティングを起動して、教室の音声・動画ストリームとホワイトボード操作の受信を開始します。ブラウザ内に教室全体の画面を表示し、同時にスクリーンショットを撮影します。授業終了時に、プラットフォームが録画終了リクエストを送信し、Function Compute プラットフォームがインスタンスを正常に終了させます。終了前に、インスタンスは一時的な録画結果をクラウドストレージにアップロードしてから、Function Compute インスタンスが破棄されます。プロセス全体を通じてリソースの無駄は一切ありません。

すぐに使える可観測性

ファンクションコンピューティングプラットフォームにとって、可観測性は極めて重要だと考えています。まず、ビジネスのピーク時には大量の Function Compute インスタンスを起動する必要があるため、包括的なメトリクス、ログ、トレースを備えて大規模なインスタンスを効果的にモニターする必要があります。次に、Function Compute インスタンスはオンデマンドで作成され、タスク完了後に破棄されるため、開発者が問題発見後にトラブルシューティングを行えるよう、プラットフォームは完全なログを保存する必要があります。

録画サービスの開発過程で直面した課題は、Function Compute インスタンス起動後に Chrome ブラウザがライブ配信サービスにアクセスする際、ネットワークエラーが発生して録画が失敗する問題でした。その後、Alibaba Cloud の Simple Log Service ログプラットフォームでログを確認したところ、Chrome ブラウザのカーネルがネットワーク処理に対して過度に敏感であることが原因だと判明しました。原因を特定した後、リトライメカニズムを追加することで問題を解決しました。

期待を超える:ファンクションコンピューティングがもたらした驚き

Function Compute を導入する前は、数百ミリ秒で数万のインスタンスを起動し、コールドスタートの課題を完全に解決し、ライブ配信のトランスコーディングや画面キャプチャのビジネスピークを支えられることを期待していました。大規模な突発トラフィックに効果的に対応し、従量課金でリソース使用率を向上させ、リソースコストを 20% 削減し、運用保守コストを大幅に削減できるため、ビジネス革新のみに集中できます。

実際の使用過程で、Function Compute はニーズを完全に満たすだけでなく、さらなる驚きをもたらしてくれました。開発者は少数の新しい概念といくつかの API を習得するだけで、簡単にプラットフォームを利用できます。Function Compute ソリューションの運用開始以来、クラウドリソースコストは大幅に削減されました。さらに、Function Compute では自社のビジネスシナリオに合わせたテンプレートを作成し、他のビジネスチームがそれを活用できるため、思わぬ副次的メリットも得られています。

Related Articles

Explore More Special Offers

  1. Short Message Service(SMS) & Mail Service

    50,000 email package starts as low as USD 1.99, 120 short messages start at only USD 1.00

phone お問い合わせ
Hi, I'm Alibaba Cloud AI Assistant!
I can help with questions and solutions.