LoginSignup
0
0

More than 1 year has passed since last update.

Python+サーバレス開発を勉強する中でzappaがデプロイするリソースについて気になったので調べてみた

Posted at

はじめに

デプロイするアプリケーション構成

  • 参考書のchapter9が完了した時点での構成をざっくり抜粋して書くと、以下のようになる
application
├sever.py                # アプリ起動プログラム
├zappa_settings.json     # zappa設定ファイル 
└ flask_blog
  ├__init__.py           # 初期処理プログラム
  ├config.py             # アプリケーション設定プログラム
  ├models/               # モデルプログラム群
  ├static
  │ └style.css           # CSS定義ファイル
  ├templates/            # HTMLファイル群
  └ views                # ビュープログラム群

zappaでデプロイしたリソース確認

  • 以下コマンドでデプロイ
$ zappa deploy dev
  • ApiGatewayの確認
    zappa apigateway確認.png

  • Lambdaの確認
    zaapa lambda確認.png

でてきた疑問点

  • HTMLファイルの実体どこにあるんだ?
    • よく目にするのは静的ファイルはs3に格納して表示するパターン
  • lambdaのソースコードどうなっている?

    • 以下のようにコードのファイルサイズが大きすぎると表示されて、
      コンソールからはファイルが確認できない
    the deployment package of your Lambda function "application-dev" is too large to enable inline code editing. However, you can still invoke your function.
    

調べた内容

AWS Webアプリのサーバレスアーキテクチャ例

Lambdaのソースコード取得方法

  • Lambdaのソースコードは調べたところ以下コマンド取得できた (コンソールから アクション->関数のエクスポートでも取得できるみたい)
$ aws lambda get-function --function-name [function名] --query 'Code.Location' | xargs curl -o [出力ファイル名指定(例 xxx.zip)]

取得した結果を確認したところ
デプロイするアプリケーション構成に記載したファイルもまるっと含まれていた

終わりに

  • いつかサーバレスアプリケーションを作ってみたいなと思っていたので
    Pythonの学習に加えてサーバレスのアーキテクチャパターンを調査できたのはよかった
  • SPAとMPAの違いもろくに分かっていなかったので
    Webアプリ開発の理解が乏しすぎることを再認識しました、、、
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0