Dashボタンでウォーターサーバーの備品注文をできるようにしてみた
色々頑張って作成したウォーターサーバーの発注自動化、毎回電話する必要も無くなりました。
普通こういったシステムを入れるとき、DBやら入力フォームを持ったサーバーを用意してやるのが普通なのかもしれません。
でも、こんな時々発生する、ちょこっとした仕事の為にサーバーを用意するのもお値段が・・・
しかも立てたらサーバーの維持が・・・。アップデートが・・・セキュリティが・・・。
しかし!今回はサーバーレスで作成している為、サーバー維持を考えずしかも安いのです!
ってことでウォーターサーバーの発注自動化のお値段を計算して行きたいと思います。
今回使用したサービスはこんな感じです。
- S3(発注タスク保存用ファイルとログの2つ)
- Lambda
- APIGateway
- SES
- IoT 1-click
<計算から除いてるもの>
- 通信費用
- 人件費
- 替えの水の代金
目安として月額で出したいと思います。 1日に2回補充ボタンが押されて、メールを1回送るとします。 そうすると月に休日を除き約21日とし、月にボタン42回、メール21回と仮定して進めて行きます。
S3の料金
S3の料金は保存サイズとリクエストで値段が変化します。
ログが増えていくので多く見積もって1Mとします。 S3の料金表では0.025USD/GBとなっているので 0.025 × 0.001 = 0.000025USD とします。
次にリクエストの料金表となってます
リクエスト | 料金 |
---|---|
PUT、COPY、POST、または LIST リクエスト | リクエスト 1,000 件あたり 0.0047USD |
GET、SELECT および他のすべてのリクエスト | リクエスト 1,000 件あたり 0.00037USD |
ボタン、メール共データベースの方にPUT,GETを行い、メールはログの方にPUT,GETを行うため、それぞれ84回ずつとします。
PUT 0.0047 × 0.001 × 84 = 0.0003948 GET 0.00037 × 0.001 × 84 = 0.00003108
となりS3全体での合計額は、
0.0003948(PUT) + 0.00003108(GET) + 0.000025(容量課金) = 0.00045088 USD
Lambdaの料金
Lambda料金は実行時間と使用メモリ量によるので、試しに動かしてみると、
課金期間 3s 想定メモリ 128M 使ったメモリ 40M
となっています。料金表では
メモリ (MB) | 1 か月の無料利用枠の秒数 | 100 ミリ秒単位の価格 (USD) |
---|---|---|
128 | 3,200,000 | 0.000000208 |
となっていて、月にボタン、メールの両方で動くので
0.000000208 × 30 × 63 = 0.00039312 USD
APIGatewayの料金
料金表では
リクエスト数 (月間) | 価格 (100 万あたり) |
---|---|
最初の 3 億 3,300 万 | 4.25 USD |
となっているので、
4.25 × 0.000001 × 63 = 0.00026775 USD
SESの料金
料金表では
お客様の利用状況 | お客様の支払い額 | 追加料金 |
---|---|---|
E メールクライアントやその他のソフトウェアパッケージからの E メール送信 | 1,000 件ごとに 0.10 USD | 添付ファイル 1 GB につき 0.12 USD |
となっています。今回はテキストメッセージのみで追加料金はかかる心配はなく、またメールの送信は月に21回になり、一回の宛先が2つ(発注先と念の為自社のアドレス)なので42となります。
0.10 × 0.001 × 42 = 0.0042 USD
IoT 1-Click の料金
料金表では
有効なデバイス数 | 有効なデバイスあたりの月額料金 |
---|---|
1~14,999 | 0.25 USD |
15,000~74,999 | 0.2 USD |
75,000~99,999 | 0.15 USD |
100,000 以上 | 0.1 USD |
となっています。
そして
お客様のアカウントで 1,000 台のデバイスを AWS IoT 1-Click で使用し、すべてのデバイスを 11 月 1 日に有効にするとします。
デバイス 1~500 はその月の終わりまで有効にします。これらデバイスについては、1 か月分の課金となります。
デバイス 501~1,000 は 11 月 16 日に無効にします。このデバイスについては、15 日分の課金となります。
とのことですが、いちいち有効化、無効化していられない&そんなに高くないので月額料金そのままにします。
0.25 USD × 1 個 = 0.25 USD
結果発表!
多くの計算をいたしました。以下が一覧になります
サービス | 料金(USD/月) |
---|---|
S3 | 0.00045088 |
Lambda | 0.00039312 |
APIGateway | 0.00026775 |
SES | 0.0042 |
IoT 1-Click | 0.25 |
そして気になる合計は…
0.25531175 USD
1USDを120円と換算して
30.63741円!!!!!
100円いってないです…1年使って370円くらいです… すごい…
まぁ、ミスってボタン連打とかをし続けたり、修正を押しまくったりすると増えますが、大量に行わなければかなり安いです。
まとめ
・お金
AWS費用:0.637円
EC2のt2.nanoでも$5くらい月額でかかるので、圧倒的やすさ!無料枠残ってる方はその中で余裕のハズです。
・時間
環境構築・仕様調査・調整など40時間程度
・Dashボタン代
¥2500
やはり自動化は素晴らしい
作るまでは大変だけどいい経験になりました。