2016-12-28 37 views

回答

3

除了@Didier Spezia寫的之外,我還會嘗試將關注者存儲在已排序的集合中。

如果您想按名稱命名,請將它們全部存儲爲0分,然後使用ZRANGEBYLEX以詞法形式對它們進行分頁。

如果您希望通過將它們添加爲朋友的順序,請使用添加的時間戳作爲分數,然後使用ZRANGE按時間分頁。哦,另一種選擇是看內存是否與你有關:如果ID是恆定長度的整數,你可以使用一個字符串鍵將它們作爲二進制值存儲在一個數組中,然後用範圍對其進行分頁。它會超快速,並且幾乎沒有內存開銷。看看BITFIELD命令。這可能是一個非常好的用例,但它不包括刪除和查找,所以如果這是一個問題,它不是一個好的選擇。

+0

我聽說排序集在消耗內存和處理方面較重,這就是爲什麼我想使用集合,糾正我,如果我錯了。 –

+1

他們有點重,但套也不便宜。有一個配置選項可以優化小型有序集的內存,可以使內存高達80%,看看redis.conf。 –

2

您可以嘗試利用SSCAN命令。確保瞭解SCAN命令的工作原理。

相關問題