Redis問題總結

2021-10-10 14:39:10 字數 385 閱讀 8748

參考:

參考:

現象:使用者大量併發請求的資料(key)對應的資料在redis和資料庫中都不存在,導致儘管資料不存在但還是每次都會進行查db。

為什麼key對應資料在快取和db中不存在還會每次都進行db查詢呢?因為很多開發同學寫的**寫的邏輯都是先從redis快取中查一把,如果快取中為空則從db中查,如果db中查到的資料不為空則設定到快取並返回給介面。那麼問題來了,如果從db中查詢的資料為空呢??

解決方案

現象:大量key同一時間點失效,同時又有大量請求打進來,導致流量直接打在db上,造成db不可用。

解決方案:

redis總結問題

簡單回顧了redis,在這過程中 首先得了解redis是什麼,redis的運用場景,redis支援哪些資料格式,redis如何運算元據,redis如何實現高可用 redis是什麼 redis 是乙個開源的使用 ansi c 語言編寫 遵守 bsd 協議 支援網路 可基於記憶體亦可持久化的日誌型 ke...

redis使用遇到的問題總結

1 純記憶體操作 2 單執行緒操作,避免了頻繁的上下文切換 3 採用了非阻塞i o 多路復用機制 1 快取和資料庫雙寫一致性問題 2 快取雪崩問題 3 快取擊穿問題 4 快取併發競爭問題 前提是對資料有強一致性要求,不能放快取 只能降低不一致發生的概率,無法完全避免 只能保證最終一致性。1 採用正確...

面試 Redis面試常見問題總結

redis採用的是基於記憶體的採用的是單程序單執行緒模型的kv資料庫,由c語言編寫。官方提供的資料是可以達到100000 的qps。這個資料不比採用單程序多執行緒的同樣基於記憶體的kv資料庫memcached差。redis快的主要原因是 完全基於記憶體 資料結構簡單,對資料操作也簡單 使用多路 i ...