我在寫一個使用Redis的非常簡單的社交網絡應用程序。Redis多個請求
每個用戶都有一個排序的集合,其中包含其Feed中的項目的ID。如果我想顯示他們的飼料,我做以下步驟:
- 使用
ZREVRANGE
獲得項目的id的飼料 - 使用
HMGET
獲得飼料(每源項目是一個字符串)
但現在,我也想知道用戶是否喜歡飼料項目。所以我有一組與每個包含喜歡飼料項目的用戶的ID的飼料項目相關聯。
如果我得到15個供稿項目,現在我必須向Redis另外執行15個請求,以便查找每個供稿項目(如果當前用戶已對其進行了評論)(通過檢查每個組中是否存在每個供稿飼料)。
這樣就需要15 + 1個請求。
使用Redis時,這種類型的查詢是否被視爲「正常」?有沒有更好的方法可以構建數據以避免這麼多要求?
我正在使用redis-rb gem。
流水線也許?或一個Lua腳本? – akonsu