2008-11-24 86 views
8

有沒有人比較各種後臺處理技術的開銷?Rails後臺任務開銷

背景/ RB,八哥,Workling MemcacheQ 青苗 後臺作業(BJ) 的delayed_job(DJ)

我將實施對切片其中之一,並想知道他們有多少內存取所以我可以將其納入我的決策。

+0

目前,Sidekiq是一個更好的選擇。在這裏閱讀更多信息,https://github.com/mperham/sidekiq/wiki – 2014-01-28 05:43:38

回答

4

它將根據您的Rails應用程序本身而有所不同。

大多數這些處理器取決於您的Rails對象,實際上會將整個Rails實例加載到內存中。您的應用程序內存將取決於模型數量,任何插件的影響以及您的環境的主要高潮狀況。

我有一個256MB Slice運行幾個Mongrels和BackgroundRB,並發現後臺進程使用與Mongrel實例相同的內存。

我一直喜歡的一個選擇是將您的計劃邏輯放在控制器中,並使用wget或Curl通過Cron調用它。你可以利用現有的Rails應用程序,並且設置它的開銷很小。在上面的例子中,我沒有選擇這個選項的唯一原因是每5秒需要一個隊列(Cron只能每分鐘運行一次)。

7

我也會對全面比較感興趣,但我可以說的一件事是BackgroundRB被其作者棄用。在EngineYard後,他們在BackgroundBB遇到棘手問題後特別推薦了BackgroundJob。但我沒有聽說你提到的其他選項。

+0

這是我聽說過的第一個。 Thankyou提到它。 – 2008-12-29 00:04:57

2

對於低維護我喜歡後臺作業。它運行在你的Rails進程或者cron中,所以沒有守護進程需要監視。在我的服務器上,Bj當前使用的是35636 RSS(大約一個Rails進程的價值)。

當我聽到有關使用BackgrounDRB的人時,我總是感到驚訝,因爲它基本上沒有維護。

+0

它看起來積極維持我。 – Tilendor 2009-12-21 23:51:03