見出し画像

サーバーレスアンチパターン今昔物語 【学習メモ】

AWS Japanの@Keisuke69 さんによるオンライン勉強会 (サーバーレスアンチパターン今昔物語) に参加しました。個人的な学習メモです。

【Lambda × RDS】 過去のサーバーレスアンチパターン

※ RDSというかRDBMS全般

----------------------------
■ Lambda は同時にリクエストがくると水平方向にスケールアウトする
たとえば1,000リクエストがきたとしたら、Lambda 関数のコンテナが1,000個立ち上がる
■ Lambda → RDSへの接続にめっちゃ負荷がかかる
■ でもLambda はステートレスだから、コネクションプール的なことができない
■ 大量のリクエストに耐えられるめっちゃ巨大なDBを準備するのもあんまコスト的に現実的ではない
 (せっかくLambda で使った分だけ課金にしてるのに、ずっとDB立ち上げといたらあんま意味ない)
----------------------------

詳細な解説は@Keisuke69 さんの記事をごらんください。

▼ なぜAWS LambdaとRDBMSの相性が悪いかを簡単に説明する
https://www.keisuke69.net/entry/2017/06/21/121501

【Lambda × RDS】 上記の問題が解消されたらしい

RDS Proxy というプロキシが登場した
https://aws.amazon.com/jp/rds/proxy/
■ Lambda がRDS Proxy を呼べるようになったから、Lambda とRDSの相性が劇的に改善された

質問タイムから一部メモ

【Q】解決したアンチパターンがある中で、新アンチパターンみたいなものを出して欲しいです。
→ 【A】 Lambda から EFSにアクセスできるようになったけど
 ステートフルなアプリケーションになりそうだから、あんまりおすすめしない
【Q】簡単なバッチを作るとして Fargate と Lambda どういう使い分けをしたらいいですか?
→ 【A】バッチ処理が15分以上かかるならおのずとFargate。他はLambda

感想

AWS に明るくない自分に理解できるかな... と思いつつ参加したのですが、@Keisuke69 さんのご説明は大変わかりやすかったです。
過去のアンチパターンがアップデートによって改善されるのはすばらしいですね。

また、勉強会の枠が30分間のというのも良かったです。
集中力が続くのと、だらけないという気づきがありました。

先に勉強しなきゃいけないことがまだまだいっぱいあるので、RDS Proxy を深掘りするのはいったん置いておきます。
存在を知っておいて、必要になったとき改めて深掘りします!

この記事が気に入ったらサポートをしてみませんか?