redis在項目中怎么用

redis作為一款性能優異的內存數據庫,在互聯網公司有著多種應用場景,本文介紹筆者在項目中使用redis的場景。

redis在項目中怎么用

主要從以下幾個方面介紹:

分布式鎖 ? ? ? ? ? ? (推薦學習:Redis視頻教程

接口限流器

訂單緩存

Redis和DB數據一致性處理

防止緩存穿透和雪崩

分布式Session共享

訂單緩存

整個訂單的存儲結構如下:

redis在項目中怎么用

使用Redis的zset數據結構存儲每個用戶的訂單,按照下單時間倒序排列,用戶唯一標識作為key,用戶的訂單集合作為value,使用訂單創建時間的時間戳+訂單號后三位作為分數

為什么不直接使用下單時間的時間戳作為分數?因為下單時間只精確到秒,同一秒可能出現多個訂單情況,這樣就會出現相同的分數,而加上訂單號后三位就能基本上避免這種情景。

只放用戶的前N條訂單即可,因為很少有用戶會查看很久以前的訂單,這樣做會節省很多空間。如果有用戶需要查看前N條之后的訂單,再從數據庫中查詢即可,當然這種概率就比較小了。

? 版權聲明
THE END
喜歡就支持一下吧
點贊10 分享