2015-02-09 20 views
0

我目前正在研究高擴展性網站架構,幾乎所有我讀過的文章都表示,Redis是時間線(Facebook,Twitter類似)體系結構的非常好的選擇。因此,讓我們假設我正在構建一個新的社交網絡,我想用Redis保存每個用戶的最近500條Feed,我只是好奇當用戶刪除最近500條Feed中的Feed時會發生什麼?我找不到任何有關更新Redis列表項的信息,如果Redis中沒有這樣的事情,它怎麼會是一個非常好的選擇?如何更新Redis列表項?

+0

我不確定與問候的「飼料」的問題,但列表是用於添加/從它們的末端去除,而較少的非常好更新他們中的任意物品 – 2015-02-09 16:23:36

+0

@Ryan我不確定你是否理解我。 – spartacus 2015-02-09 20:12:30

+0

抱歉我的誤解造成任何混淆。 – 2015-02-09 21:23:58

回答

0

假設您想維護最近500個訂閱源的排序,代替列表,使用更好的redis結構將是sorted set

要添加新條目,您可以使用命令ZADD user_id:feeds time_in_epoch feed_id。 time_in_epoch將用於排序集合&將保持訂閱源的排序。

刪除用戶的訂閱源,ZREM user_id:feeds feed_id

+0

如果不需要排序,則可以使用集合而不是有序集合。 – zodvik 2015-02-09 19:57:21

+4

添加和刪除好,但如何更新列表中的飼料? – spartacus 2015-02-09 21:39:54