App Runner の最小サイズの設定値よりも起動したインスタンス数が少ない理由を教えてください

App Runner の最小サイズの設定値よりも起動したインスタンス数が少ない理由を教えてください

Clock Icon2025.05.09

困っていた内容

App Runner の Auto Scaling の最小サイズ(Min size)を 2 に設定しています。
ログを確認すると、インスタンスが 1 台しか起動していない時間がありました。
最小サイズの設定値よりもインスタンスの稼働数が少ない理由を教えてください。

どう対応すればいいの?

最小サイズとは、事前にプロビジョニングされたインスタンスの台数の設定値となります。
そのため、最小サイズは常時アクティブなインスタンスの台数を指定するものではありません

最小サイズは、トラフィックが最大同時実行数(Max concurrency)を超過した際に、速やかに追加のインスタンスを起動するための仕組みです。

App Runner の自動スケーリングの管理 - AWS App Runner

・最小サイズ – App Runner がサービスにプロビジョニングできるインスタンスの最小数。サービスには、常にこの数のプロビジョニングされたインスタンスがあります。これらのインスタンスの一部は、トラフィックをアクティブに処理します。残りは、費用対効果の高いコンピューティングキャパシティーリザーブの一部であり、すぐにアクティブ化できます。プロビジョニングされたすべてのインスタンスのメモリ使用量に対して料金が発生します。アクティブなサブセットのみの CPU 使用率に対して料金が発生します。

例として、トラフィックが最大同時実行数以下の状態の場合、アクティブなインスタンス数は最小サイズで指定した台数よりも少なくなる可能性があります。

参考資料

App Runner の自動スケーリングの管理 - AWS App Runner
AWS App Runner: Deep Dive - AWS Online Tech Talks - YouTube
※動画のため、リンクを開く際は音声にご注意ください。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.