dyno タイプ
最終更新日 2023年02月06日(月)
Table of Contents
Heroku には、小規模なプロジェクトからトラフィック量の多い本番サービスまで、あらゆるサイズのアプリをサポートするための dyno タイプが豊富に揃っています。
各 Common Runtime dyno タイプのメモリ、CPU シェア、およびその他の識別特性は以下のとおりです。
仕様 | Eco | Basic | Standard-1X | Standard-2X | Performance-M | Performance-L |
---|---|---|---|---|---|---|
メモリ (RAM) | 512 MB | 512 MB | 512 MB | 1024 MB | 2.5 GB | 14 GB |
CPU 共有 | 1x | 1x | 1x | 2x | 100% | 100% |
コンピューティング | 1x-4x | 1x-4x | 1x-4x | 4x-8x | 12x | 50x |
スリープ | ✔ | |||||
専用 | ✔ | ✔ |
これらの図により、過去のシステム負荷に 99% 基づいて予想されるパフォーマンスが示されます。eco
、basic
、および standard
の dyno タイプで実行中のアプリのパフォーマンスは、利用可能なシステムリソースのほか、アカウントでの制限によって異なります。アプリのパフォーマンスは、その実装によっても大きく異なります。
Heroku では、秒単位の従量課金で料金が発生します。使用していないときは dyno をスケールダウンできます。価格設定の詳細については、「使用と請求」を参照してください。
eco
dyno の使用には Eco のサブスクリプションが必要です。使用量は秒単位で追跡され、アカウントのすべての eco
dyno によって共有される 1000 dyno 時間のプールから消費されます。詳細は、「Eco Dyno Hours」(Eco dyno 時間) を参照してください。
Private Space または Shield Private Space で実行中のアプリでは、異なる dyno タイプが利用可能です。これらの Enterprise 固有 dyno タイプの詳細は、こちらの記事を参照してください。
dyno 機能のサポート
機能 | Eco | Basic | Standard-1X | Standard-2X | Performance-M | Performance-L |
---|---|---|---|---|---|---|
Git または Docker を使用したデプロイ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
カスタムドメインサポート | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
パイプライン | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
自動 OS パッチ適用 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
通常および適時更新による言語バージョンサポート | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
無料 SSL および TLS 証明書の自動証明書管理 | ✔ | ✔ | ✔ | ✔ | ✔ | |
アプリケーション関連の指標 | ✔ | ✔ | ✔ | ✔ | ✔ | |
Heroku チーム | ✔ | ✔ | ✔ | ✔ | ✔ | |
水平方向のスケーラビリティ | ✔ | ✔ | ✔ | ✔ | ||
Preboot | ✔ | ✔ | ✔ | ✔ | ||
言語ランタイム関連の指標 | ✔ | ✔ | ✔ | ✔ | ||
Web dyno のオートスケール | ✔ | ✔ | ||||
専用コンピューティングリソース | ✔ | ✔ |
デフォルトのスケーリング制限
アプリごとに以下の制限があります。
- デフォルトで、アプリケーションではすべてのプロセスタイプでの合計 dyno 数が 100 に制限されます。
eco
またはbasic
dyno が実行されているアプリでは、プロセスタイプごとに実行できる dyno は 1 つのみです。eco
dyno で実行中のアプリは、最大で 2 つの並列実行されている dyno に制限されます。たとえば、web
プロセス用とworker
プロセス用に 1 つずつの dyno を実行できます。performance
dyno が使用される単一のプロセスタイプを、10 を超える dyno が使用されるようにスケーリングすることはできません。
アプリケーションのこの制限を上げるには、リクエストを送信します。
並列 One-off dyno の制限
- 1 つの
eco
One-off dyno (eco
には Eco dyno プラン)のサブスクリプションが必要) - 最大 50 の One-off
basic
dyno - 最大 50 の One-off
standard-1x
dyno - 最大 50 の One-off
standard-2x
dyno - 最大 5 の One-off
performance-m
dyno - 最大 5 の One-off
performance-l
dyno
performance-m
および performance-l
の dyno へのアクセスは、確立された支払履歴を持つお客様に限定されています。
アプリケーションのこの制限を上げるには、リクエストを送信します。
dyno 層と dyno タイプの混合
Dyno タイプは、さまざまな層に分類されます。
- Eco 層:
eco
dyno を使用するアプリでは、そのプロセスタイプのすべてにeco
dyno のみを使用できます。 - Basic 層:
basic
dyno を使用するアプリでは、そのプロセスタイプのすべてにbasic
dyno のみを使用できます。 - Professional 層: Professional 層の dyno (
standard
およびperformance
) を使用するアプリでは、さまざまな Professional 層の dyno タイプをそのプロセスに使用できます。 たとえば、performance-m
dyno にはweb
プロセスタイプを、standard-1x
dyno には Worker プロセスタイプをアプリで実行できます。
dyno タイプの設定
プロセスの新しい dyno タイプを設定すると、影響を受ける dyno がすべて再起動します。より大きな dyno タイプにサイズ変更する場合は、リソースのコストと消費を最適化するために、dyno の数をスケールダウンできるかどうかを確認してください。ガイダンスについては、「dyno の使用の最適化」を参照してください。
Heroku Dashboard から
アプリの dyno 層を変更する
Heroku Dashboard では、アプリの Resources
(リソース) タブからアプリの dyno 層を選択できます。
- 変更するアプリをアプリの一覧からクリックします。
- アプリの
Resources
(リソース) タブをクリックします。 - dyno の一覧の上にある
Change Dyno Type
(dyno タイプの変更) をクリックします。 - 切り替え先の dyno 層を Eco、Basic、または Professional (Standard/Performance) から選択します。
Save
(保存) をクリックします。
Professional 層 dyno の dyno タイプを変更する
Professional 層で dyno タイプを変更するには、次のようにします。
- 前のセクションの手順を完了して、現在の dyno 層が Standard/Performance に設定されていることを確認します。
- サイズ変更するプロセスタイプの横にある八角形をクリックします。
- ドロップダウンメニューから、オプション (Standard-1X、Standard-2X、Performance-M、Performance-L) を選択します。
Confirm
(確認) をクリックします。
dyno の数をスケーリングする
Heroku Dashboard から Professional 層の dyno をスケーリングできます。
Heroku CLI から
Heroku CLI を使用して、あらゆるプロセスタイプの dyno のスケーリングとサイズ変更を行うことができます。
dyno の数をスケーリングする
以下のコマンドにより、Web dyno の数が 3 つにスケーリングされ、現在の dyno タイプは維持されます。
$ heroku ps:scale web=3
1 つのプロセスで複数の eco
または basic
dyno を実行することはできません。Professional 層の dyno の数を 1 より大きくするスケーリングのみが可能です。
プロセスの dyno タイプを変更する
以下のコマンドにより、Worker dyno タイプが standard-2x
に変更され、現在の dyno の数は維持されます。
$ heroku ps:type worker=standard-2x
他のプロセスの dyno と同じ dyno 層内の dyno タイプからのみ選択できます。たとえば、web
プロセスに eco
を使用する場合、Worker のサイズを standard-2x
に変更することはできません。詳細は、「dyno 層と dyno タイプの混合」を参照してください。
すべてのプロセスの dyno タイプを変更する
以下のコマンドにより、すべてのアプリのプロセスタイプの dyno タイプが standard-1x
に変更され、現在の dyno の数は維持されます。
$ heroku ps:type standard-1x
プロセスの dyno タイプを表示する
各プロセスタイプの現在の dyno タイプを表示するには、ps
コマンドを使用します。
$ heroku ps
=== web (standard-2x): `bundle exec puma -C config/puma.rb`
web.1: up 2015/03/27 14:27:58 (~ 6h ago)
web.2: up 2015/03/27 14:47:04 (~ 6h ago)
web.3: up 2015/03/27 15:08:23 (~ 5h ago)
=== worker (standard-1x): `bundle exec rake worker:job`
worker.1: up 2015/03/27 14:39:04 (~ 6h ago)
worker.2: up 2015/03/27 15:08:24 (~ 5h ago)
worker.3: up 2015/03/27 14:30:55 (~ 6h ago)
One-off dyno のタイプの設定
メモリ負荷の高い One-off dyno の dyno タイプを設定できます。詳細については、「One-off dyno」を参照してください。
スケジューラー
スケジューラーアドオンによって One-off dyno が使用されます。アプリでプロビジョニングされるすべての One-off dyno のタイプがサポートされます。