Heroku は (クレジットカードを登録したアカウントの) 無料枠で 1,000dyno 時間まで利用できますが,複数のアプリを常に立ち上げておくには足りません.
小規模な Web アプリケーションを動かすために他の IaaS や VPS などを検討し,最終的に Heroku の Hobby プランに落ち着きました.
課金プランの扱い
プランの料金とはアカウント単位ではなくアプリケーション単位でかかるコストを指します.つまり,アカウントが Hobby プランになるのではなく,アプリケーションが Hobby プランになるというわけです.
もし,Hobby プランで複数のアプリケーションを動かしたいならそれぞれに課金する必要があるので,$7*2 = 14/month です.そして,課金していないアプリケーションは引き続き Free プランの枠内で扱われることになります.
課金の仕方
アプリケーションごと課金するシステムなので,各アプリケーションで別々に管理されています.
アプリケーションのページの [Resources] タブを開いた一番上に [Upgrade to hobby...] というボタンがあり,そこで課金プランを選択します.
Heroku に課金するメリット
ここからは (素人目線で) 長所と短所を述べていきます.
サーバ構築もメンテも要らない
最初の構築だけでなくアクセス数が増えてメモリを増やしたいといった需要にもすぐ応えられるのが楽です.
いちいち自分でリソース確保したりせずとも,GUI でバーの長さを変えるだけですから.お金も飛びますけれども.
セキュリティ対策も要らない
SELinux で悩んだり悪意ある攻撃に怯えたりすることもありません.だいたいは Heroku がやってくれます.
以前ブログを VPS 運用に移していたときには DoS 攻撃されてログインすらできない状況に....インフラエンジニアの皆様に日々感謝です.
サーバ証明書も要らない
独自ドメインを使おうとも,Hobby プラン以上であれば SSL が利用できます.証明書は趣味程度で使うには高く,SSH で Let's Encrypt 導入して cron で叩く手間もありません.
Heroku に課金する短所
ネットワークの遅延
プライベート契約では高いお金を払えば東京リージョンとかが使えるのですが,普通に契約する人はアメリカかヨーロッパのサーバを借りることになるので,必然的に遅延します.
そこら辺にシビアなアプリケーションでは使えないですね.
課金額と規模の兼ね合い
アプリケーションごと課金というシステムは,低コストで押さえたい場合の人にとっての短所になるかもしれません.小規模アプリケーションでもそれぞれに 7 ドルずつかかるわけですから.
自分でサーバを建てたりメンテナンスしたりとかの手間を考えると,そこまでのコストではないとも思いますが.
最後に
GCE や AWS を使った後に Heroku 使うとやはり楽ですね.
このブログが「さくらの VPS」上にあったときはセキュリティ対策や HTTPS 化あたりに苦労したので,そこら辺が簡単にできるのも嬉しいです.