ITmedia NEWS > 速報 >

「Google Cloud Functions」や「Cloud Run」のコールドスタートを高速化する「startup CPU boost」登場

» 2022年09月30日 10時10分 公開
[新野淳一ITmedia]

この記事は新野淳一氏のブログ「Publickey」に掲載された「Google Cloud FunctionsやCloud Runのコールドスタートを高速化する「startup CPU boost」登場」(2022年9月30日掲載)を、ITmedia NEWS編集部で一部編集し、転載したものです。

 米Google Cloudは、「Cloud Functions」や「Cloud Run」におけるコールドスタートで時間がかかる起動時間を短縮する「startup CPU boost」を発表しました。

 Cloud RunやCloud Functionsなどの、いわゆるサーバレス基盤により提供されるサービスでは、まったくインスタンスが存在しない状態から、リクエストの発生によりインスタンスを起動する、「コールドスタート」が発生する場面がしばしばあります。

 サーバレスであってもあらかじめ最小のインスタンス数を指定しておき、リクエストがない状態でも最小インスタンスでリクエストを待ち構えていれば、リクエストがあったときに瞬時にインスタンスの処理を開始させることは可能です。

 この状態を「ウォームスタート」と一般に呼びますが、ウォームスタートは迅速なレスポンスの一方で待ち時間にもインスタンスを起動しておくため、そのコンピュータリソースの消費による一定のコストが発生します。

 一方、コールドスタートではリクエストが発生していないときにはインスタンスをゼロにしておくため、リクエスト待ちのコストをゼロに抑えることができます。しかし、リクエストが来たタイミングでまずインスタンスを起動する必要があるため、リクエストから処理開始までのレスポンスタイムが大きく遅くなるという欠点があります。

 startup CPU boostは、このコールドスタートの欠点を改善できるサービスです。

 Google Cloudによると、特に起動に時間がかかるJavaアプリケーションでの効果は高く、最大でコールドスタートのレスポンスタイムを半分に減らせたとのことです。またNode.jsアプリケーションでもレスポンスタイムを30%改善したと説明されています。

 startup CPU Boostの仕組みは説明されていませんが、起動時のメモリイメージを保存して高速にロードさせる、などの技術が使われているのではないかと想像します。

 startup CPU boostは現時点でプレビュー機能として提供されており、Cloud Runでは管理画面からオンにすることで利用可能。Cloud Functionsではデフォルトでオンになっているとのことです。

Copyright © ITmedia, Inc. All Rights Reserved.