AWS Lambda は、AWSが提供するイベントドリブンなプログラム実行環境であり、昨今ではサーバーレスアーキテクチャの実現手段として注目を集めている。 AWSの公式ドキュメントによると、AWS Lambda の関数はステートレスな実装にする必要がある。一方でステートレスな実装を追求すると、外部サーバからのデータ取得処理が増え、結果として処理パフォーマンスが悪化することが多い。 本稿では、データの性質に応じたAWS Lambda での状態保持(キャッシュ利用)の可否について考察し、キャッシュに関する実装や運用の一例を示す。 1. Lambda 関数に求められる「ステートレス」の意味 AWSの公式ドキュメンテーションによると、AWS Lambdaの関数は、ステートレスな実装にする必要がある。 コードは必ず「ステートレス」なスタイルで書く必要があります。 ~中略~ 関数をステートレスにするこ