Skip to content
shunter1112 edited this page Aug 30, 2013 · 1 revision

HerokuのDynoはデフォルトの設定である("1X")では、1個のCPUと512MBのメモリの割当を得ます。もしあなたのアプリケーションが、より多くのCPUの割当、またはより多くのメモリを必要としている場合、Dynoを、プロセスタイプ毎にCPUの割当とメモリを2倍にしてくれる設定である"2X"へとリサイズすることができます。

ユースケースとしては、より並列性の高いRuby/Unicornを使っているWeb Dynoの実行や、Worker Dynoでの大きい画像処理や地理情報処理を含みます。

正しいDynoのサイズの決定のために、log-runtime-metrics Labs フラグを使ってメモリの使用量を測ってみてください。 ログの計算はheroku logs -tlog2viz、またはログを利用するアドオンを使うと確認する事が出来ます。

For help determining the right dyno size measure memory usage with the log-runtime-metrics Labs flag. The logged metrics can be viewed with heroku logs -t, log2viz, or any addon that consumes logs.

利用可能なDynoのサイズ

Dyno Size Memory (RAM) CPU Share Price/dyno-hour
1X 512MB 1x $0.05
2X 1024MB 2x $0.10
1X Dynoと比べて、**2X Dynoは無料Dyno時間を2倍の早さで消費します**。例えば、1X Dynoが1つのアプリケーションが750時間無料で稼働するのに対して、2X Dynoが1つのアプリケーションは375時間無料で稼働することになります。

もし、あなたのアプリケーションが1個の 2X Web Dyno だけで実行していた場合、スリープ状態になるでしょう。

Dynoサイズの設定

**重要 :** Dynoのリサイズは該当するDynoをリスタートさせます。

CLI

Heroku Toolbeltを使って、resizeコマンドであなたのDynoをリサイズします :

:::term
$ heroku ps:resize web=2X worker=1X
Resizing dynos and restarting specified processes... done
web dynos now 2X ($0.10/dyno-hour)
worker dynos now 1X ($0.05/dyno-hour)

プロセスタイプのDynoのサイズを確認するために、psコマンドを使用します :

:::term
$ heroku ps
=== web (2X): `bundle exec unicorn -p $PORT -c ./config/unicorn.rb`
web.1: up 2013/03/27 14:27:58 (~ 6h ago)
web.2: up 2013/03/27 14:47:04 (~ 6h ago)
web.3: up 2013/03/27 15:08:23 (~ 5h ago)

=== worker (1X): `bundle exec rake worker:job`
worker.1: up 2013/03/27 14:39:04 (~ 6h ago)
worker.2: up 2013/03/27 15:08:24 (~ 5h ago)
worker.3: up 2013/03/27 14:30:55 (~ 6h ago)

ダッシュボード

ダッシュボード上のアプリケーションのリソースページを使っています :

One-off Dyno

メモリを集中させたOne-off Dynoも作る事が出来ます :

:::term
$ heroku run --size=2X rake heavy:job

Schedulerも同様に2XのOne-off Dynoでの実行をサポートしています。

Clone this wiki locally