2019.6.30 redis知識點

redis是單線程的,

1.爲什麼快?

純內存操作

單線程,減少了上下文切換

非阻塞I/O多路複用

2.數據類型?

string

hash:value=>結構化對象|模擬session效果

list:模擬簡單的消息隊列、排隊|redis可用於分頁

set:全局去重

sored set:多了一個權重參數sare|排行榜、取topn

3.redis的過期策略以及內存淘汰機制

定期刪除+惰性刪除

4.redis和數據庫雙寫一致性問題(只能降低概率,不能避免)

更新策略:先更新數據庫,再更新緩存

刪除緩存失效:補償機制

5.緩存穿透和緩存雪崩

緩存穿透:黑色故意去請求緩存中不存在的數據,導致所有請求都懟到數據庫上,從而鏈接失常

解決:互斥鎖、異步更新策略、提供一個能迅速判斷請求是否有效的攔截機制

緩存雪崩:

解決:給緩存一個隨機失效時間、互斥鎖、雙緩存

6.解決redis的併發競爭key問題:

不要求順序:分佈式鎖,大家去搶鎖

要求順序:保存一個時間戳

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章