2012-07-25 67 views
3

我正在構建一個多線程的排隊服務。我需要確保Redis(我們的數據後端)具有用於列表或集合類型的線程安全彈出功能。這個想法是任意數量的線程都可以調用Redis lpopspop,並且不會有任何衝突。如果彈出功能是線程安全的,我並不確定如何測試,並且它不會在Redis頁面的任何地方顯式指明。是Redis列表還是設置pop方法線程安全?

回答

10

the benchmark page

Redis是一個單線程服務器。它的設計不受益於多個CPU內核的 。人們應該啓動若干Redis 實例以在需要時在多個核心上擴展。實際上, 公平地比較一個單一Redis實例與多線程數據存儲。

使每一個命令獲取一個單獨的線程排隊你應該確定爲永遠不會有平行

執行兩個指令
相關問題