Azure Functionsの料金表が難しかったので、1回実行当たりの金額をどうやって試算するか調べました。
内容は執筆時点(2018年12月)のものです。
Functionsの種類
まずFunctionsには、App Serviceプランと従量課金プランの2種類があります。
App Serviceプラン
App Service上で実行されるため、課金額はApp Serviceの料金が掛かります。
Basic以上のプランが必要な為、それなりに金額は掛かります。
App Serviceプランを利用するメリットは、10分以上の実行が必要なときや、常にバックグラウンドでインスタンスを待機させたい場合などが挙げられます。(従量課金プランだと初回実行時は立ち上がるまで少し時間がかかる)
従量課金プラン
1回実行当たりの実行時間と実行回数によって課金されるプランです。
毎月の無料枠がかなりお得ですが、はたして自分の作ったFunctionsは無料枠に収まるのか?
が気になったので、従量課金プランの1回実行当たりの金額を試算します。
まずは料金表を見てみましょう。
実行回数はいいとして、GB秒当たりの実行時間の試算方法がよく分かりません。
料金算出
実行時間算出
メトリックから確認することができます。
4.01M = 4,010,000
4,010,000 / 1,024,000 = 3.91 GB秒
- GB秒当たりの課金額は0.001792円なので、
3.91 GB秒 * 0.001792 円 = 0.007 円
- このFunctionsは1回実行当たり大体0.007円だということが分かりました。
実行回数算出
-
メトリック[Function Execute Count]を確認することで分かります。
-
100万回実行までは22.40円なので、実行回数は分かりやすいですね。
合計金額
仮にこのFunctionsが毎日1回実行されるとした場合の月の課金額は以下となります。
実行時間 : 0.007円 * 31日 = 0.217円
実行回数 : 22.40 円
合計金額 : 0.217 + 22.40 = 22.617円
毎月の無料枠
実行時間 : 400,000 GB 秒
実行回数 : 100 万実行回数
先程の例だと余裕で収まります。無料枠お得過ぎますね!