さまざまなシナリオでビジネス要件を満たすために、Function Computeは組み込みランタイム、カスタムランタイム、およびカスタムコンテナランタイムを提供します。 このトピックでは、Function Computeでサポートされているランタイムの適用可能なシナリオと違いについて説明し、ビジネス要件に最適なランタイムを選択するのに役立ちます。
比較
項目 | 組み込みランタイム | カスタムランタイム | カスタムコンテナー実行時間 |
シナリオ | Function Computeで定義されたインターフェイスに基づいて、イベントやHTTPリクエストを処理するプログラムを作成します。 | Java SpringBoot、Node.js Express、Python Flask、Golang Ginなどの一般的なフレームワークに基づいてプログラムを作成するか、既存のフレームワークアプリケーションを移行します。 |
|
コールドスタート期間 | 最短ランタイムがコードパッケージに含まれていないため、コールドスタートの期間は最短です。 | 短いカスタムランタイムは一般的なイメージを使用し、イメージをプルする必要はありません。 したがって、コールドスタートの期間は短いです。 | 比較的長い画像をプルする必要があるため、コールドスタートの期間は長くなります。 |
コードパッケージサイズの上限 | 500 MB非圧縮コードパッケージ。 | 500 MB非圧縮コードパッケージ。 | 10 GB非圧縮イメージ。 |
コードパッケージ形式 | ZIP、JAR (Java) 、およびフォルダー。 | ZIP、JAR (Java) 、およびフォルダー。 | |
GPU高速化インスタンス | サポートされていません。 | サポートされていません。 | サポートされています。 |
ランタイム | Node.js、Python、PHP、Java、。NET Core、およびGo。 | 無制限 | 無制限 |
関数ランタイム
組み込みランタイム
Function Computeで定義されたインターフェイスを使用して、イベントリクエストとHTTPリクエストを処理するプログラムを作成する場合は、組み込みのランタイムを使用します。 詳細については、「関数の管理」の「関数の作成」セクションをご参照ください。
カスタムランタイム
Java SpringBoot、Node.js Express、Python Flask、Golang Ginなどの一般的なフレームワークに基づいてプログラムを作成したり、既存のフレームワークアプリケーションを移行したりする場合は、カスタムランタイムを使用できます。 詳細については、「関数の管理」の「関数の作成」セクションをご参照ください。
カスタムコンテナー実行時間
Alibaba Cloud Container Registryは、Open Container Initiative (OCI) の標準を満たすクラウドネイティブアーティファクトを効率的に管理および配布できる安全なプラットフォームです。 アーティファクトには、コンテナ画像とHelmチャートが含まれます。 コンテナイメージを使用して関数をデプロイすると、自己管理イメージサービスを作成して維持する必要なく、クラウド上で安全で効率的なイメージホスティングと配布を行うことができます。 詳細については、「カスタムコンテナ関数の作成」をご参照ください。