我想了解resque是如何設計和工作的。我知道它在Redis中存儲了JSON對象,但Redis只是一個非常快速的鍵值數據庫。這與併發有什麼關係? resque是否簡單地創建其他系統進程?怎麼樣? 'fork'在Windows上不受支持。它只是產生線程?Ruby和Resque併發
感謝
我想了解resque是如何設計和工作的。我知道它在Redis中存儲了JSON對象,但Redis只是一個非常快速的鍵值數據庫。這與併發有什麼關係? resque是否簡單地創建其他系統進程?怎麼樣? 'fork'在Windows上不受支持。它只是產生線程?Ruby和Resque併發
感謝
Resque基本上滋生/份的軌道環境和運行在一個新的進程。
然後它使用redis在您配置的隊列中查找要執行的作業。 它評估在給定參數的隊列中找到的對象(它回答「執行」消息)。
這可能是最昂貴的內存方法...... –
如果我在rails之外使用resque,該怎麼辦?那可能嗎?它會產生ruby進程嗎?它如何在Windows上分叉? O_o –
是的,你可以在軌道外運行它。我不確定它是如何在Windows上工作的。是的,你是對的,這是記憶體昂貴。您通常會在單獨的機器上運行Resque,專用於Resque作業。另一種不同的方法,即更快,更少的內存密集是Sidekiq。你可能想嘗試一下:http://sidekiq.org/ – Amir
是的,resque分叉子進程。我不知道它是否適用於Windows。 –
你的意思是像系統進程? –
是的,操作系統術語中的進程 –