Open9

『AWS Lambda, FastAPI, DynamoDB で作るサーバーレスAPI』のアレコレ

山本隼汰 | Hayata Yamamoto山本隼汰 | Hayata Yamamoto

記事のアウトラインはここにまとめていこう

山本隼汰 | Hayata Yamamoto山本隼汰 | Hayata Yamamoto

『開発環境整えて、取り急ぎデプロイだけしてみる』のアウトライン

  1. 必要なライブラリのインストール
  2. main.py だけで health エンドポイント書く
  3. CDK 等でAWSのインフラ作る
  4. CLIでサクッとデプロイ、APIをブラウザから呼び出す

メモ

  • ざっくり1時間くらいあればお手元で試せるくらいのめっちゃ簡単なものを想像。
  • CDK というかインフラ作成ツール多すぎて選ぶのがめんどい。AWS CDK にしようかなと思いつつ
山本隼汰 | Hayata Yamamoto山本隼汰 | Hayata Yamamoto

『とりあえずAPIの実装加えてみる』のアウトライン

  1. システム構成の整理(図とか、APIの定義とか、シーケンスとか書いてみます)
  2. FastAPI のはなし
  3. エンドポイントの実装加えるローカルで動作確認
  4. Swagger UIで動作見てみる
  5. 必要な分だけAPIの実装追加

ゆるぼ

  • 作るシステムのアイデアがありません(TODOアプリとかでいいんかな)

参考
https://zenn.dev/hayata_yamamoto/articles/82a30919dc0b06

山本隼汰 | Hayata Yamamoto山本隼汰 | Hayata Yamamoto

『UIをとりあえず作る』のアウトライン

  1. streamlit の紹介
  2. Swagger UIをブラウザから見れるようにする
  3. DBの定義書いて、デプロイ
  4. なんかいい感じにUIっぽいものを作ります
  5. デプロイしてみる

ぼやき

  • UI あった方が良いと思うから作るけど、streamlit は勉強しないといけない...
山本隼汰 | Hayata Yamamoto山本隼汰 | Hayata Yamamoto

『CI/CD でデプロイの煩わしさから解放される』のアウトライン

  1. デプロイ用のコマンドをなんかしら書く(Makefile とか)
  2. CI/CD のサービス紹介(何使うか決めてません)
  3. CI/CD の定義を追加、デプロイ
  4. 動作確認

メモ

  • CI/CD のツールも特に希望がなくて難しい。GitHub Actions が手頃でいいかなぁ
山本隼汰 | Hayata Yamamoto山本隼汰 | Hayata Yamamoto

『API で実行が難しそうな処理をどうにか提供する』のアウトライン

  1. AWS Lambda の制約の話
  2. いくつかの設計パターンの紹介(SQS, Lambda, ECS, SNS など)
  3. 紹介したパターンをいくつか使って実装を追加

メモ

  • まあ色々できるから深入りしすぎない程度で