什麼時候傾向於選擇redis?
1、複雜資料結構
value是哈希,列表,集合,有序集合等複雜資料結構的時候,選擇redis更合適,因為mc無法滿足這樣的需求。
典型場景:使用者訊息,評論,訂單清單等
2、持久化
mc不支援持久化
但redis持久化的使用需要注意
千萬不要將redis當作資料庫來使用:
1)redis的定期快照無法保證資料不會遺失
2)redis的AOF會降低效率,且不能支援太大的資料量
快取場景,開啟持久化有什麼利弊?
優點:down機重啟,記憶體中能夠快速恢復熱點數據,分擔資料庫壓力,沒有cache預熱過程
缺點:redis掛了以後,資料庫中資料有修改,可能導致redis中資料不一致
只讀場景,或一些允許不一致的業務場景,可以嘗試開啟redis持久化功能
3、天然高可用
redis天然支援集群功能,可實現主從複製,讀寫分離
Redis官方提供了sentinel集群管理工具,能夠實現主從服務監控,故障自動轉移
Mc想要實現高可用,需要進行二次開發
要注意的是,大部分業務場景,快取真的需要高可用嗎?
1)儲存場景,很多時候,是允許cache miss
2)快取掛了,很多時候可以透過DB讀取資料
4、儲存的value很大
mc的value存儲,最大為1m,如果存儲的value很大,只能使用redis
更多Redis相關知識,請訪問Redis使用教程欄!
以上是什麼情況下傾向於使用redis的詳細內容。更多資訊請關注PHP中文網其他相關文章!