web-dev-qa-db-ja.com

Heroku CedarでThinまたはUnicornを使用する必要がありますか

私は最近、アプリをHerokuのcedarプラットフォームに「アップグレード」しました。デフォルトでは、thinをWebサーバーとして使用しています。しかし、私は常に並行性のためにUnicornを使用し、dynoドルを父に任せたいと思ってきました。しかし、Thin以外のものを使用する際にいくつかの落とし穴があるのではないかと心配しています。

誰もがこの決定について実際の経験を持っていますか?


ノート:

誰もがこれをすべきではない理由を知りたい

47
Jonathan

更新-3か月後。

私はユニコーンを3か月間生産に使用しており、非常に満足しています。 dynoごとに4つのUnicornワーカーを使用しています。

注意が必要なことの1つは、メモリの消費とリークです。実際には、dynoごとに512MBのメモリを使用する代わりに、Herokuワーカーの数で割った値になります。しかし、それを念頭に置いてください-それは大きなコスト削減になりました

28
Jonathan

そうしない理由はありません-私はHerokuでUnicornを使用して大成功を収めています。

7
John Beynon

HerokuがUnicornの使用に関する投稿を書きました: https://blog.heroku.com/archives/2013/2/27/Unicorn_Rails

私は今それを試してみます、それはそれがパフォーマンスとコスト節約の両方のための道のりのようです。

6
Emmanuel

Thinを使用していて、コードがリクエストをすぐにクリアしない場合は、問題が発生します。Herokuはランダムルーティングを使用しているため、無料のダイノがある場合でも、ブロックされたダイノにリクエストがスタックされます。すべてのフォークが同時に遅いリクエストを受け取る可能性が低いため、メモリヒットを処理できる場合は、Unicornを使用する方が良いようです。 Herokuのランダムルーティングの問題は解決しませんが、大いに役立つはずです。

この回答のリンクと説明:

https://stackoverflow.com/a/19965981/1233555

0
ChrisPhoenix