*この記事は編集中で、随時更新しています。
本記事では、WebサービスをHerokuで運用するときの運用コストなどを、サービス運営者向けにまとめています。
サービス体系/料金プラン
Herokuでは、Dynoと呼ばれる単位ごとに料金を従量課金制で支払うことになっています。1 Dynoとは、説明は省略しますがざっくり言うと「サーバー1台分」のようなものだと思ってください。なので、例えばひとつのwebサービスを運用しようと思うなら、最低でもサーバー1台必要なので、1 Dyno分の料金をその使用量に応じて支払うと言うことになります。以下に、現行のDyno1台に対して1ヶ月まるまる使用したときにかかる料金(表内では/dyno/monthと記載しています)とDynoの性能を、料金プランごとにまとめました。日割りでかかかる料金は各値を30で割ったくらいの値になります。
Free | Hobby | Standard (1xと2xがある) | performance (MとLがある) | |
---|---|---|---|---|
料金 | 無料 | $7/dyno/month | 1x: $25/dyno/month 2x: $50/dyno/month |
M: $250/dyno/month L: $500/dyno/month |
プロセスタイプ | 2個 | 10個 | 制限なし | 制限なし |
常時起動 | 30分間アクセスがないとsleep | O | O | O |
スケールアウト | X | X | O | O |
メモリ(RAM) | 512MB | 512MB | 1x: 512MB 2x: 1GB |
M: 2.5GB L: 14GB |
(ref) |
- Standard 1xまでは、1 Dynoに割り当てられるメモリは512MB
無料枠は全アプリケーション合計で月1000時間まで
現在(2016/06/01-)の料金体系では、Freeプランだと1アカウントあたりすべてのアプリケーションやアドオンを含めて1000時間までが無料枠となります(ref)。なので、例えば開発環境用と本番環境用で2つDynoを稼働していて、さらにnewrelicのアドオンを使用していると、その3つの使用時間の合計が1000時間になるまでが無料となります。よって、例えばwebアプリケーションを運用していてひと月常時稼働させようとすると、まず本番環境用のDynoだけで
- 24時間 x 30(日) = 720時間
ぶんを消費します。またFreeプランで常時稼働するためには上記の表にある30分sleep制限を回避するスクリプトなどを含める必要があるので、それもHerokuで設定するとすると(もちろん自前でも設定できます)Freeプランで常時稼働サービスを作るとするとざっくり1環境分までなら運用可能ということになります。
アドオンの料金プラン
Herokuでは通常の料金プランで利用できるサービスに加えてアドオンを追加することでサービスの機能を拡張することができます。アドオンには有料のものと無料のものがありますが、運用の際に導入を検討する可能性が高そうなアドオンの概要と料金プランを以下にまとめます。
SSL
Herokuで公開したアプリケーションには、デフォルトでhttps://xxxxx.herokuapp.com/
というURLが割り当てられ、そこからアプリケーションにアクセスします。このURLは先頭が(http
でなく)https
となっていますが、これは説明は省略しますがざっくり言うと「安全な」通信が行なわれるということを意味します。しかし実際にサービスを運用するときには、このデフォルトのURLではなく独自に他サービスで取得したドメインを使うのが普通です。Herokuでは独自のドメインさえ持っていれば、どの料金プランでも無料でデフォルトのURLから独自のhttp
で始まるURLに置き換えて公開することが可能ですが、SSLアドオンを利用することで、Hobby以上の有料プランであればhttps
で始まる独自URLも無料で設定することができます (ref)。
開発者向け
- Herokuへのデプロイはslug 200 MGまで
- .slugignoreにデプロイ対象外ファイルを指定できる
- レスポンスは30秒タイムアウト(変更不可能)
- Pumaウェブサーバー&Railsアプリケーションをデプロイするときの設定関連の参考ページ
履歴
[2016/09/22] 全有料プランでSSL利用が無料に。SSL Is Now Included on All Paid Dynos
[2016/06/01] 無料枠が全アプリケーション合計で月1000時間までに変更。Announcing Heroku Free SSL Beta and Flexible Dyno Hours