はじめに: サーバーレスはどのようにして生まれたのでしょうか?現在のアプリケーションシナリオは何ですか?サーバーレスの将来はどうなるのでしょうか?この記事では、Alibaba Cloud の上級技術専門家 Bu Chi 氏の Serverless に関する見解を共有し、その開発の歴史を振り返り、Serverless の開発動向を予測します。
起源コンピュータ技術の発展の歴史全体を振り返ると、「抽象化、分離、統合」というテーマが一貫していることがわかります。業界のあらゆる抽象化、分離、統合はイノベーションを新たな高みへと押し上げ、巨大な市場と新しいビジネス モデルを生み出します。 メインフレームの時代では、ハードウェアとソフトウェアの両方が、独自のハードウェア、オペレーティング システム、アプリケーション ソフトウェアを使用してカスタマイズされていました。 PC の時代では、ハードウェアは抽象化され、CPU、メモリ、ハードディスク、マザーボード、USB デバイスなどの標準化されたコンポーネントに分離されました。さまざまなメーカーが製造したコンポーネントを自由に組み合わせて、完全なマシンを組み立てることができます。ソフトウェアは抽象化され、オペレーティング システムやライブラリなどの再利用可能なコンポーネントに分離されます。ハードウェアとソフトウェアの抽象的な分離により、新しいビジネス モデルが生まれ、生産性が向上し、PC 時代の繁栄がもたらされました。 クラウドの時代では、ハードウェアのソフトウェア化とソフトウェアのサービス化が 2 つの最も顕著なトレンドになっています。
Google の有名な論文「コンピューターとしてのデータセンター」を覚えていますか?クラウドを DT 時代のコンピューターと見なすと、当然次のような疑問が生じます。クラウド API (完全に管理されたサービス) がますます豊富になるにつれて、クラウドに適したプログラミング モデルは何になるのでしょうか。どのような「抽象的、分離的、統合的」な方法でクラウドベースのアプリケーションを構築すればよいでしょうか? 上記の質問に答える前に、まず SaaS 分野に注目してみましょう。 Salesforce は SaaS 分野のスター企業であり、プラットフォーム機能の構築における同社のレイアウトは優れた事例を提供します。初期の SaaS 製品は標準化された配信モデルを採用し、オープン API インターフェースを通じて統合機能を実現しました。 Salesforce 製品が多様化し、顧客基盤が拡大するにつれて、企業は新たな課題に直面し始めています。
Salesforce の戦略は、ビジネス、テクノロジー、組織全体をプラットフォーム化することです。このプラットフォームは企業の価値を高め、企業、顧客、開発者に利益をもたらします。プラットフォームのアプリケーション配信機能を継続的に改善することで、社内の製品研究開発の効率を大幅に向上させ、製品の統合と統合を強化することができます。外部的には、製品の統合機能を大幅に向上させ、開発者エコシステムを確立することができます。 Salesforce は 2006 年以来、プラットフォーム機能の構築に多額の投資を行っており、Apex や Visualforce などのプログラミング言語を導入して、顧客、パートナー、開発者がマルチテナント環境でカスタム ロジック コードを作成して実行できるようにしています。これを基に、2008 年に自社開発の Force.com PaaS プラットフォームがリリースされ、顧客は Salesforce の機能を活用して独自のアプリケーションを構築できるようになりました。同社は2010年に人気のPaaSサービスプロバイダーHerokuを買収し、2019年にはサーバーレスコンピューティングプラットフォームEvergreenを立ち上げ、アプリケーションの構築、統合、統合機能をさらに強化しました。アプリケーション構築能力に加え、Salesforce は近年、アプリケーションのモビリティ、デジタル化、インテリジェンスにも多大な投資を行っており、関連分野でのプラットフォームの機能を拡張し、顧客の管理プロセスのデジタル化とインテリジェント化を支援し、データ分析とトランザクションマッチングを通じて顧客に増分的なビジネスをもたらしています。 Salesforce の開発をまとめると、いくつかの結論を導き出すことができます。
クラウドは上記の SaaS の場合よりもはるかに複雑ですが、同様の開発ロジックに従います。クラウド サービス製品の機能のほぼすべてが API を通じて反映されており、クラウド サービス プロバイダーは、プラットフォーム プログラミング モデルの開発、ユーザー価値提供機能の向上、アプリケーション開発エコシステムの確立も最も重要な目標と考えています。クラウド製品システムをプログラミングモデルの観点から検討すると、さまざまな複雑なクラウドサービスの位置づけがますます明確になります。 Infrastructure as a Service (IaaS) とコンテナ テクノロジは、クラウドのインフラストラクチャです。 K8Sに代表されるコンテナオーケストレーションサービスはクラウドネイティブアプリケーションのオペレーティングシステムであり、特定分野のバックエンドサービス(BaaS)はクラウドのAPIです。より高い生産性を実現するために、ストレージ、データベース、ミドルウェア、ビッグデータ、AI などの分野で、多数の BaaS サービスがフルマネージドかつサーバーレス化されています。この傾向は長年にわたって続いています。たとえば、顧客は現在、独自のサーバーベースのデータ ストレージ システムを構築する代わりに、サーバーレス オブジェクト ストレージを使用することに非常に慣れています。クラウドが豊富なサーバーレス BaaS サービスを提供するようになった後、インフラストラクチャの複雑さを隠蔽し、クラウド サービスに基づくアプリケーションを迅速に構築できる新しい汎用コンピューティング サービスが必要になります。そのため、次の要素を含むサーバーレス コンピューティングが誕生しました。
仮想マシンやコンテナなどのリソース指向のコンピューティング プラットフォームとは異なり、サーバーレス コンピューティングはアプリケーション指向です。ユーザーが価値提供方法において破壊的イノベーションを実現できるようにするには、クラウドの製品システムとそのエコシステムを統合およびリンクできる必要があります。 現在の状況: 現在、Serverless はどのようなシナリオで使用されていますか?近年、ユーザー認知の確立と製品機能の向上により、サーバーレスは加速的な開発傾向を示しています。多くのシナリオにおいて、サーバーレス アーキテクチャを使用することで、ユーザーは信頼性、コスト、研究開発および運用効率の面で大きなメリットを得ていることがわかりました。 1. ミニプログラム/Web/モバイル/APIバックエンドサービスミニプログラム、Web/モバイル アプリケーション、API サービスなどのシナリオでは、ビジネス ロジックが複雑で変更可能であり、反復と起動の速度要件が高くなります。さらに、このようなオンライン アプリケーションのリソース使用率は通常 30% 未満であり、特にミニ プログラムなどのロングテール アプリケーションの場合、リソース使用率は 10% 未満になることもあります。サーバーレス コンピューティングはメンテナンス不要で従量課金制なので、ミニプログラム/Web/モバイル/API バックエンド システムの構築に非常に適しています。コンピューティング リソースの予約 + リアルタイムの自動スケーリングにより、開発者は安定したレイテンシで高頻度のアクセスに対応できるオンライン アプリケーションを迅速に構築できます。 Alibaba 内では、フロントエンド フルスタック分野の Serverless For Frontends、機械学習アルゴリズム サービス、ミニプログラム プラットフォームの実装など、Serverless を使用してバックエンド サービスを構築することが最も一般的なシナリオです。 2. 大規模バッチタスク処理大規模なオーディオおよびビデオ ファイルのトランスコーディング サービスなどの一般的なオフライン タスク バッチ処理システムには、コンピューティング リソースの管理、タスクの優先順位のスケジュール設定、タスクのスケジュール設定、タスクの信頼性の高い実行、タスク データの視覚化などの一連の機能が含まれています。マシンまたはコンテナ レベルから構築する場合、ユーザーは通常、メッセージ キューを使用してタスク情報を永続化し、コンピューティング リソースを割り当て、K8S などのコンテナ オーケストレーション システムを使用してリソースのスケーリングとフォールト トレランスを実現し、監視システムとアラーム システムを独自に構築または統合します。タスクに複数のステップが含まれる場合は、信頼性の高いステップ実行を実現するためにワークフロー サービスを統合する必要もあります。サーバーレス コンピューティング プラットフォームを使用すると、ユーザーはタスク処理ロジックの実装に集中するだけで済み、サーバーレス コンピューティングの極めて高い弾力性により、突発的なタスクのコンピューティング能力要件に十分対応できます。 3. イベント駆動型アーキテクチャに基づくオンラインアプリケーションとオフラインデータ処理一般的なサーバーレス コンピューティング サービスは、イベント駆動型でさまざまな種類のクラウド サービスと広く統合されています。ユーザーは、サーバーなどのインフラストラクチャを管理したり、複数のサービスを統合するためのグルーコードを記述したりする必要がなく、疎結合の分散イベント駆動型アーキテクチャ アプリケーションを簡単に構築できます。 Alibaba Cloud Function Compute を例にとると、API Gateway と Function Compute の統合により、ユーザーは API バックエンド サービスを迅速に実装できます。オブジェクトストレージと関数コンピューティングのイベント統合により、関数がオブジェクトの作成や削除などのイベントにリアルタイムに応答できるようになり、オブジェクトストレージを中心とした大規模データ処理を実現します。メッセージ ミドルウェアと関数コンピューティングのイベント統合により、ユーザーは大量のメッセージを迅速に処理できます。 Alibaba Cloud EventBridge との統合により、ファーストパーティのクラウド サービス、サードパーティの SaaS サービス、ユーザーが構築したシステムなど、すべてのイベントを Function Compute で迅速かつ便利に処理できます。 4. 運用と保守の自動化時間指定トリガーを使用すると、ユーザーは関数を使用して、タスクを実行する基盤となるサーバーを管理することなく、スケジュールされたタスクを迅速に実装できます。クラウド監視トリガーを通じて、ユーザーは ECS の再起動/ダウンタイムや OSS オブジェクト ストレージのフロー制御などの IaaS レイヤー サービスの運用および保守イベントを受信し、機能処理を自動的にトリガーできます。 将来: サーバーレスはどこに向かうのか?近年、サーバーレスは急速に発展し、影響力を増しています。主流のクラウド サービス プロバイダーも、クラウド製品システムを継続的に強化し、より優れた開発ツール、より効率的なアプリケーション配信パイプライン、より優れた可観測性、より洗練された製品統合を提供していますが、すべてはまだ始まったばかりです。 トレンド 1: サーバーレスはどこにでも存在する十分に複雑な技術的ソリューションは、完全に管理されたサーバーレス バックエンド サービスとして実装されます。クラウド製品だけでなく、パートナーやサードパーティのサービスも含まれます。クラウドとそのエコシステムの機能は、API + サーバーレスを通じて反映されます。実際、DingTalk、WeChat、Didi など、機能を公開する手段として API を使用するプラットフォーム製品や組織にとって、サーバーレスはプラットフォーム戦略の最も重要な部分になります。 トレンド2: コンテナエコシステムとのより緊密な統合コンテナは、アプリケーションの移植性と配信プロセスの俊敏性において破壊的なイノベーションを実現し、最新のアプリケーションの構築と配信における重要な変化をもたらします。 優れた移植性: オペレーティング システムの仮想化テクノロジにより、アプリケーションとそのオペレーティング環境がコンテナーに仮想化され、一度構築すればどこでも実行できるようになります。コンテナ化されたアプリケーションは、開発マシン、オンプレミス、パブリック クラウド環境で区別なく実行できます。 アジャイル配信プロセス: コンテナ イメージは、アプリケーションのパッケージ化と配布の事実上の標準となっています。今日、世界中の開発者は、アプリケーションを配信および配布する方法としてコンテナを使用することに慣れています。コンテナを中心に完全なアプリケーション配信ツール チェーンが確立されています。 コンテナは現代のアプリケーションの運用の基盤となっていますが、水位推定、機械の操作やメンテナンスなど、サーバーなどのインフラストラクチャの管理は依然としてユーザーが責任を負う必要があります。そのため、AWS FargateやAlibaba Cloud ECIなどのサーバーレスコンテナサービスが業界で登場し、ユーザーがインフラストラクチャ管理のコストを負担することなくコンテナ化されたアプリケーションの構築に集中できるようにしています。サーバーレスの観点から見ると、Function Compute などのサーバーレス コンピューティング サービスは、完全に自動的なスケーリング、極めて高い弾力性、完全にオンデマンドの計測をユーザーに提供します。しかし、互換性、移植性、完全なツール チェーン、およびユーザーの開発習慣に基づくエコロジーの面で課題に直面しています。これらはまさにコンテナの利点です。技術の発展により、将来的には、関数コンピューティングなどのサーバーレス アプリケーションの配布方法もコンテナ イメージになっていくと考えています。コンテナの巨大なツールエコシステムとメンテナンスフリーで極めて弾力性のあるサーバーレスを組み合わせることで、ユーザーにまったく新しい体験をもたらします。 トレンド3: サーバーレスはクラウドとそのエコシステム内のすべてをイベント駆動型で接続する前の章では、イベント駆動型コンピューティングを通じて関数コンピューティングとクラウド サービスを接続することの重要性について説明しました。この機能はクラウド エコシステム全体にも拡張されます。ユーザー自身のアプリケーションであるか、パートナーのサービスであるかに関係なく、オンプレミス環境でもパブリッククラウドでも、すべてのイベントをサーバーレスで処理できます。クラウド サービスとそのエコシステムはより密接に連携し、ユーザーが回復力と可用性に優れたアプリケーションを構築するための基盤となります。 トレンド4: サーバーレスコンピューティングは、コンピューティング密度の向上を継続し、最高のパフォーマンス対電力比とパフォーマンス対価格比を実現します。仮想マシンとコンテナは、異なる方向性を持つ 2 つの仮想化テクノロジです。前者はセキュリティが強固でオーバーヘッドが低いのに対し、後者はその逆です。一方、サーバーレス コンピューティング プラットフォームには最高のセキュリティと最低のリソース オーバーヘッドが求められ、両方の長所を兼ね備える必要があります。一方、任意のバイナリ ファイルのサポートなど、元のプログラム実行方法との互換性を維持する必要があり、特定の言語の VM に適したソリューションは実現不可能になります。そのため、AWS Firecracker や Google gVisor などの新しい軽量仮想化テクノロジーが誕生しました。 AWS Firecracker を例にとると、デバイスモデルをカスタマイズし、カーネルの読み込みプロセスを最適化することで、数百ミリ秒の起動速度と極めて小さなメモリオーバーヘッドを実現します。 1 つのベアメタル インスタンスは数千のインスタンスをサポートします。アプリケーション負荷を考慮したリソース スケジューリング アルゴリズムと組み合わせることで、クラウド サービス プロバイダーは安定したパフォーマンスを維持しながら、オーバーセリング率を 1 桁向上させることが期待されます。 サーバーレス コンピューティングの規模と影響力が拡大するにつれ、アプリケーション フレームワーク、言語、ハードウェアなどの側面からサーバーレスの負荷特性に基づいてエンドツーエンドの最適化を実行することが非常に重要になります。新しい Java 仮想マシン テクノロジにより、Java アプリケーションの起動速度が大幅に向上し、不揮発性メモリによりインスタンスの起動が高速化され、CPU ハードウェアとオペレーティング システムが連携して高密度環境でのパフォーマンス障害の細かい分離を実現します。すべての新しいテクノロジーがまったく新しいコンピューティング環境を生み出しています。 最高のパフォーマンスと電力の比率、およびパフォーマンスと価格の比率を実現するためのもう 1 つの重要な方向性は、異機種ハードウェアをサポートすることです。長い間、X86 プロセッサのパフォーマンスを向上させることはますます困難になってきました。極めて高い計算能力を必要とする AI などのシナリオでは、GPU、FPGA、TPU (Tensor Processing Units) などのアーキテクチャを備えたプロセッサの方が計算効率の面で大きな利点があります。異種ハードウェア仮想化、リソース プーリング、異種リソース スケジューリング、アプリケーション フレームワーク サポートが成熟するにつれて、異種ハードウェアのコンピューティング パワーもサーバーレスを通じて解放されるようになり、ユーザーの敷居が大幅に下がります。 追記2009 年、カリフォルニア大学バークレー校は、クラウドとその価値、課題、進化の道筋について論じた有名な論文「Above the Clouds: A Berkeley View of Cloud Computing」を発表しました。この論文の洞察は、過去 10 年間のクラウド開発を通じて検証されています。今日、クラウドの価値とそれがあらゆる分野に及ぼす大きな影響に疑問を抱く人はいません。 2019 年に彼らは新しい論文「クラウド プログラミングの簡略化: サーバーレス コンピューティングに関するバークレーの見解」を発表し、今後 10 年間でサーバーレスがクラウド開発の主流になると予測しました。業界の発展は螺旋状に上昇しており、サーバーレスの誕生と台頭のロジックはそこにずっと前から含まれています。今後 10 年間で、サーバーレスは企業のイノベーションの方法を変え、クラウドが社会の発展の強力な原動力となることに貢献すると信じています。 |
>>: ウォルマート テンセント クラウド サーバーレス アプリケーションを実践し、消費者のショッピング体験を完全に保証
SentrisのVPSは、市場で圧倒的に最も破壊的な商人です。基本的に、VPS市場をキャベツよりも安...
タイトル:実践丨銀行全体の集中的な運用保守を推進し、業務のデジタル変革を可能にする――中国中信銀行の...
私が SEO と出会ったのは 2008 年です。当時は SEO について漠然とした概念しかありません...
公霄は文字通り供給と販売を意味します。この言葉は現在、電子商取引と結びついて、伝統的なブランドが電子...
IDCは4月24日、 「中国ビデオクラウド市場追跡、2022年下半期」レポートを発表し、中国のビデオ...
最近、何人かのウェブマスターとコミュニケーションを取っているときに、ある問題を発見しました。多くのウ...
ロシアのホスティング会社である Zoic は、2009 年に設立されました。主な事業は、仮想ホスティ...
テンセントテクノロジーの雷建平は6月10日に報告した。テンセントテクノロジーは本日、Xunleiが早...
この記事では、シングルページ サイトの組み込みについてのみ説明します。テスト プラットフォームのリン...
新年まで残り1日。今年のホットワードから今年のマーケティングイベントまで、年末を振り返る記事がネット...
今日は、ブランドと小売業をデジタル化する方法についてお話ししたいと思います。データによると、流行の発...
過去2年間の外部環境がいかに厳しいものであったかについては、詳しく説明する必要はありません。疫病、資...
仮想化はクラウド コンピューティングをサポートする重要なテクノロジです。クラウド コンピューティング...
2月26日、海外メディアの報道によると、米国のクラウドコンピューティング企業セールスフォースは、クラ...
このような記事をシェアしたいと思ったとき、私はいつもとても葛藤します。なぜなら、インターネットがます...