Amazon Web Services ブログ
10 周年を迎えた AWS Lambda – 過去を振り返り、未来を見据えて
2013 年に当時の同僚である Tim Wagner と会議をしたことを、私はぼんやりと覚えています。サーバーレスという用語は存在していませんでしたが、デベロッパーがインフラストラクチャではなくコードに注力できるようにするさまざまな方法について話し合いました。あるとき、私は両手を上げ、コードを空中に投げて、クラウドに取得、保存、実行させたらクールだと言ったことを覚えています。そのような会議が何度も行われた後、Tim は PRFAQ を書いて、まさにそれを実現するプラットフォームを構築することを提案し、2014 年に私は「AWS Lambda – Run Code in the Cloud」を発表することができました。
スタートアップからエンタープライズへ
Lambda などの新しいものに最初に挑戦するのが、インストールベースを気にする必要がなく、イノベーションが必要なスタートアップであることがよくあります。確かにそうでしたが、既存の企業 (エンタープライズを含む) も同様にすばやく飛びついたことに私はうれしい驚きを覚えました。少し実験した後、これらの企業はすぐに重要な社内ユースケースをサポートするイベント駆動型アプリケーションを構築する方法を見つけました。私はこれを、Lambda が成功するという初期の兆候として受け止めました。お客様がいかに早く新たな力を感じたのかは容易にわかりました。お客様は、スケーラブルかつ構成可能な方法でシステムを構築しながら、アイデアから実装、そしてそこからビジネス価値の実現へと、これまで以上に迅速に移行できるようになりました。
現在、150 万を超える Lambda ユーザーが、1 か月あたり合計で数十兆回の関数の呼び出しを実行しています。これらのお客様は、ファイル処理、ストリーム処理 (Amazon Kinesis および/または Amazon MSK と併用)、ウェブアプリケーション、IoT バックエンド、モバイルバックエンド (多くの場合、Amazon API Gateway および AWS Amplify を使用) のために Lambda を使用し、他にも多くのユースケースをサポートおよび強化しています。
サーバーレスイノベーションの最初の 10 年
カレンダーを巻き戻して、過去 10 年間の Lambda の重要なリリースをいくつか見てみましょう。
2014 年 – AWS re:Invent 2014 に先駆けて、Node.js のサポートと、S3 バケット、DynamoDB テーブル、Kinesis ストリームからのイベントトリガーへの応答機能を備えた AWS Lambda のプレビューリリース。
2015 年 – 一般提供の開始、Amazon Simple Notification Service (Amazon SNS) 通知のトリガーとしての使用、Java で記述された Lambda 関数のサポート。
2016 年 – DynamoDB Streams のサポート、Python のサポート、関数の実行時間を 5 分間に増加 (後に 15 分間に増加)。 VPC 内のリソースへのアクセス、Amazon Aurora ストアドプロシージャから Lambda 関数を呼び出す機能、環境変数、Serverless Application Model。この年には、Step Functions も導入され、複数の Lambda 関数を組み合わせてより複雑なアプリケーションを構成できるようになりました。
2017 年 – AWS X-Ray のサポート、AWS SAM Local と Serverless Application Repository のリリース。
2018 年 – イベントトリガーとしての Amazon SQS のサポート、Lambda を利用したマクロで AWS CloudFormation を拡張する機能、任意のプログラミング言語で Lambda 関数を記述する機能。
2019 年 – パフォーマンスをさらに制御できるようにするための、プロビジョンド同時実行性のサポート。
2020 年 – 最大 17% 節約できる Savings Plans へのアクセス、Lambda 関数が共有ファイルシステムにアクセスする機能、プライベートネットワーク経由で関数にアクセスするための AWS PrivateLink のサポート、コード署名、1 ミリ秒の粒度での課金、最大 10 MB のメモリと 6 vCPU を使用できる関数、コンテナイメージのサポート。
2021 年 – S3 から取得されるデータを処理できるようにするための Amazon S3 Object Lambda、AWS Lambda 拡張機能、Graviton プロセッサでの Lambda 関数の実行のサポート。
2022 年 – 関数呼び出しごとに最大 10 GB のエフェメラルストレージ、Lambda 関数の HTTPS エンドポイント、および関数呼び出しをより高速かつ予測可能にする Lambda SnapStart のサポート。
2023 年 – CloudFront、レスポンスストリーミング、および予測不可能な量のリクエストを処理する際の 12 倍高速な関数スケーリングの、Amazon S3 Object Lambda のサポート。
2024 年 – Lambda 関数のログをより簡単にキャプチャおよび検索できるようにする新しいコントロール、ARM64 アーキテクチャを使用する Java 関数の SnapStart サポート、再帰ループ検出、VS Code をベースとする新しいコンソールエディタ、および強化されたローカル IDE エクスペリエンス。過去 2 回のリリースは、Lambda 関数の構築、テスト、デバッグ、およびデプロイをより容易にすることで、デベロッパーエクスペリエンスを改善することを目的としていました。
繰り返しますが、これは私たちがリリースしたもののほんの一部にすぎません。さらに多くのリリースをご覧になりたい場合は、Lambda カテゴリのタグをチェックして、Lambda の最新情報を検索してください。
サーバーレスの次の 10 年
当初から、サーバーレスのビジョンは、デベロッパーがアイデアからビジネス価値の実現へとより迅速に移行するのをサポートするということでした。それを念頭に置いて、最初の 10 年間の Lambda の方向性を見ると、私には明らかに見える傾向がいくつかあります。
デフォルトの選択 – サーバーレスモデルは間違いなく定着しており、時間が経過する中でデフォルトの運用モデルになる可能性があります。
コンポーザビリティに向けた継続的なシフト – 時間が経過していく中で、サーバーレスアプリケーションでは、再利用可能な事前構築済みのコンポーネントの使用が増え続けていくだろうと考えています。AI を活用した開発ツールの支援により、多くの新しいコードが、新しい強力な方法で既存のコンポーネントをつなぐことに焦点を当てるようになるでしょう。これにより、アプリケーション全体の一貫性と信頼性も向上していくでしょう。
自動化された AI 最適化インフラストラクチャ管理 – Lambda によってインフラストラクチャの管理に必要な時間と労力が削減されることは既にご説明しました。今後、機械学習や他の形態の AI は、人的介入を最小限に抑えながら、リソースを最適に割り当てることで、コストとパフォーマンスの最適化に役立つでしょう。アプリケーションは、自動化され、自己修復機能と耐障害性機能を備えたインフラストラクチャ上で実行されることになるでしょう。
拡張性と統合 – 前の 2 つの項目の結果として、アプリケーションはこれまで以上に簡単に成長し、変化する状況に適応できるようになるはずです。
セキュリティ – 自動化されたインフラストラクチャ管理、リアルタイムモニタリング、他の形式の脅威検出、AI 支援による是正が連携して、サーバーレスアプリケーションをさらに安全にするでしょう。
Lambda のリソース
既に Lambda を使用してサーバーレスアプリケーションを構築しているのであれば、それはすばらしいことです。 使用を開始する準備ができたら、次のリソースが役立ちます。
サーバーレストレーニング – 無料のサーバーレスラーニングプランに登録して、サーバーレスの概念、一般的なパターン、ベストプラクティスについて学習できます。「Serverless Ramp-Up Guide」を読み、(トピックと言語の両方で) 幅広い数々のデジタルトレーニングコースと対面のクラスルームトレーニングをご覧ください:
導入事例 – AWS サーバーレスのお客様の導入事例で、AWS のお客様が Lambda や他のサーバーレステクノロジーを使用してどのように構築し、イノベーションを起こしているのかをご覧ください。
re:Invent 2024 セッション – re:Invent 2024 セッションカタログを参照して、サーバーレスコンピューティングとコンテナに焦点を当てた約 200 のセッションを見つけてください。
ポッドキャスト – AWS デベロッパーポッドキャストのエピソード 137 (AWS Lambda: A Decade of Transformation) で、Marc Brooker と Julian Wood が Lambda の起源、進化、影響について語るのをお聴きください。
新しい書籍 – サーバーレス開発とアーキテクチャに関する最新の書籍をいくつかご紹介します。
- Serverless Development on AWS: Building Enterprise-Scale Serverless Solutions
- Advanced AWS Lambda: Comprehensive Guide to Serverless Computing
- Building Modern Applications with Serverless
- Event-Driven Architecture with AWS Lambda and SNS
- Serverless Microservices with AWS
- Mastering Serverless Architectures with AWS Lambda
AWS Lambda の過去、現在、そして未来についての、ある程度詳しい概要をお楽しみいただけたのであれば幸いです。コメントを残して、ぜひご感想をお聞かせください。
– Jeff;
原文はこちらです。