X(旧Twitter)を眺めていると、こんなニュースが流れてきた
該当のポスト(X)
自分は現在、2週間後に控えるAWS SAA試験の合格を目指して学習しているのだが、
Lambdaの実行時間といったら15分が鉄板じゃないの???と驚いた
さすがに結構大きな変更だろ思いさっそく調べてみた
試験前に大きな変更は勘弁してほしいと思って調べはじめたのはナイショ
通常のLambdaはこれまで通り「15分」のまま
結論から言うと、通常のLambda関数の実行時間上限(タイムアウト)は、これまでと同様に15分のまま
しかし、「Lambda マネージドインスタンス(LMI)」という特定の形式で実行した場合のみ、タイムアウトが90分になるらしい。
そもそも「LMI(Lambda Managed Instances)」という言葉自体を初めて聞いたので、そちらも調べてみた。
LMI(Lambda Managed Instances)とは?
LMIは、AWSアカウント内に専用のEC2サーバー(インスタンス)を立ち上げ、その上でLambda関数を動かす仕組みである。
専用のサーバー環境が割り当てられるが、以下のような面倒なインフラ管理はすべてAWSが自動で行ってくれる。
- サーバーの立ち上げ
- OSのパッチ適用
- 負荷に応じた台数の増減(オートスケーリング)
つまり、インフラリソースの管理はこれまで通り不要というLambdaの良さを残しつつ、専用サーバー上で動く新しい選択肢になりそう
LMIの3つのメリット
-
コストの最適化(EC2料金体系の適用)
LMIでは「EC2の料金体系」が適用されるため、Savings Plansやリザーブドインスタンスなどの割引を受けることが可能だ。実行時間が長く、安定したワークロードであれば、料金がかなり安くなる可能性がある。 -
コールドスタート問題の解消
事前にサーバーが準備されている状態になるため、Lambda特有の「コールドスタート問題」が起きない。 -
柔軟なマシンスペックの選択
CPU最適化やメモリ最適化など、処理の内容に合わせて最適なサーバーのインスタンスタイプを自由に選ぶことができる。
どんなケースで使えるか?
- 常に一定のアクセスがあるシステム
- 15分を超えるような重いデータ処理
など、高いスペックが必要な処理や長時間の実行が求められるケースで強力な選択肢になりそうだ
逆に言えば料金体系としてはEC2ベースなので、たまに処理を行う場合やアクセスが不変の場合はこれまでのLambdaの方が有利になりそう
まとめ
「Lambdaの実行時間が90分になる」という見出しにつられて調べてみたが、通常のLambdaの制限が変わったわけではなかった
正直思ったより使えるユースケースは少なそうな印象だが、これまで「実行時間の壁」や「コールドスタート」の問題でLambdaの採用を諦めていたようなケースでは、このLMIが新たな解決策になるのではないかと思う ![]()
最近は試験勉強メインのAWSだが、結構面白い
業務でもインフラ対応することも増えてきたので、知識と業務の両立めざしてがんばろう~
ではまた