2012-03-20 45 views
47

我最近把我的應用升級到了heroku的雪松平臺。默認情況下,我使用thin作爲Web服務器。但我一直試圖使用unicorn來實現併發性,並讓我的dyno美元成爲父親。但我擔心在使用Thin之外的某些細節方面存在一些問題。我應該在Heroku Cedar上使用瘦身還是獨角獸

有沒有人有這個決定的現實生活經驗?

謝謝!

喬納森


注:

我想知道原因,大家不應該這樣做

+0

這是一個不錯的文章。感謝分享 – Andrew 2012-06-22 00:02:51

回答

28

更新 - 3個月後。

我一直在生產中使用獨角獸3個月,我一直很高興。每個測功機使用4名獨角獸工人。

你需要留意的一件事是內存消耗和泄漏。實際上,每個測功機沒有512MB的內存,而是由heroku工人的數量除。但是,牢記這一點 - 它一直保護

+0

感謝分享......我正在評估同樣的舉措,甚至做了一些[爲我的應用程序開發benchamarking](http://ylan.segal-family.com/blog/2012/08/20/better-performance - 酮的Heroku-變薄-VS-麒麟-VS-PUMA /)。它看起來像獨角獸會節省一些成本。 – 2012-08-21 23:14:02

+0

爲了提高您的答案的價值,請包含使用Unicorn說明的說明或鏈接。因爲我在想這就是我要做的! – slothbear 2012-12-17 04:19:33

+1

您是否知道使用全局變量是否存在問題(例如,每個工作人員是否保留它自己的全局變量,還是共享/切斷同一個全局變量)?這不是MVC中的常見模式,但我們在一些地方使用它。謝謝! – 2013-01-13 04:43:55

7

沒有理由不這樣做 - 我用獨角獸在Heroku上取得很大的成功。

0

如果使用薄,你的代碼沒有明確要求非常快,那麼你就麻煩了 - 因爲Heroku的使用隨機路由,請求會疊加上即使有免費DYNOS阻塞賽道。使用獨角獸似乎更好,如果你能處理內存命中,因爲你的叉子不太可能在同一時間得到緩慢的請求。它不能解決Heroku的隨機路由問題,但它應該有很大的幫助。

鏈接和解釋在這樣的回答:

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