1. 程式人生 > >在redis cluster中key帶大括號的rpoplpush操作結論

在redis cluster中key帶大括號的rpoplpush操作結論

之前的redis的是採用redis sentinel來搭建HA,後來改用了redis cluster。以前的業務使用到了rpoplpush方法,之前的程式碼版本測試也都是OK。前幾天需要做個業務測試,就手動造了幾條資料,然後使用redis自帶的client進行操作的時候,竟然神奇的報錯了(當時嚇出了一身的冷汗,因為系統已經在生產環境運行了)。報錯的內容為“CROSSSLOT Keys in request don't hash to the same slot”,意思就是key的hash結果不在同一個槽,不能操作。接著就是很常規的各種資料驗證,然而結果依舊。此時,去找QA聊了聊,為什麼以前沒有測出這個問題,結果得到的答覆是,當時測試是沒發現有這個問題。

難道jedis沒有這個問題嗎?

後來經過測試驗證,在jedis確實不存在這個問題,一切都是那麼美好。(至於深層次的原因,待日後細細研究,此次做個筆記)