HOME » Web開発 » TodoBot作成|03 Azure Functions

TodoBot作成|03 Azure Functions

はじめに

TodoBot作成、今回はメインとなるTodo管理のアプリケーションが動作するためのFunctionsを新規作成します。

前回の構成図から少し変えました。Todo管理アプリケーションの配置を、App ServiceからFunctionsに変更しています。というのも、Botなんだから問い合わせがあったときだけ動作してくれれば良く、App Serviceである必要はないなと気が付いたから。不要なコストはできるだけカットしていきましょう。

App ServiceはVMのレンタルなのでおよそ定額、Functionsは実行量に比例する従量課金制(App Serviceと同じ料金制にすることもできるけど)。Webサイト(アプリ)はApp Serivce、バッチはFunctionsという構成が多いように思う。詳しい金額の違いについては、このページの説明がわかりやすいです。

今回は環境がAzureなので、言語は相性の良い.netで開発していきます。それを前提に、Functionsの動作環境などを決定しました。

Azure Functions App

  • Basics
    • Project Details
    • Instance Details
      このあたりは見たままなので説明をカット。
      • Function App name
      • Publish
      • Runtime stack
      • Version
      • Region
  • Hosting
    • Storage
      • Storage account
        アプリケーションと連携させるストレージアカウントの設定。ストレージアカウントというのは、Azure内で利用できるストレージサービス(Blobとか)をアカウントという単位でまとめたもの。
    • Operating system
    • Plan
      Functionsを実行する環境の設定。料金やスペックに関わるところがここ。詳しくはこちら
      • Consumption(Serverless)|従量課金プラン
        • 実行中のリソースに対してのみ課金される。
      • Functions Premium|Premiumプラン
        • 従量課金プランに加え、事前ウォーミングしているワーカーがある。つまり起動が早い。あとスペックもいい。レスポンスや処理速度を重視するときはこっち。
      • App service plan|専用プラン
        • App Service Planのリソース上で動かすことができる。追加料金はなし。実行時間が長いFunctionsはこれ。
  • Networking
  • Monitoring
    • Application Insights
      パフォーマンス管理や監視ができるApplication Insightsを連携して利用するか否か。後から追加することも可能。詳しくはこちら
  • Tags
  • Review + create

従量課金プランのFunctionsとApp Service Plan

Functionsを従量課金プランで動かす場合、App Service Planは関係ないと思っていたのだけど、どうやらFunctions作成時に自動で1つ作成されるらしい。Review + createのところに、ひっそりとApp Service Planの項目があった。明らかに「自動で作成されました!」というような名前なので、わかりやすいものに変えたかったのだけど、FunctionsのApp Service Planの変更はできなかった。従量課金プランFunctions専用のApp Service Plan、というところだろうか。

後で調べること

  • Docker Containerを利用したFunctionsのパブリッシュってやったことなかった。ので、やってみたい。
  • Azure Functions Network injectionsの詳細がわからない。VNETまわりの話らしい。
上部へスクロール