多功能html
提供了豐富的數據結構,能夠知足不少實用場景,基本上能作到開箱即用
而且支持管道、事務、發佈訂閱、緩存過時、Lua腳本支持等高級功能redis
高性能數據庫
數據內存數據庫,讀寫無需訪問外存
單線程設計,訪問內存無需線程切換與同步緩存
易部署安全
支持持久化,方便數據恢復
主從複製,提升數據的安全性
配合 Redis Cluster 能夠實現數據分片,突破單機容量限制
配合 Redis Sentinel 能夠實現自動災備,實現高可用數據結構
存儲容量受限架構
做爲一款內存數據庫,內存始終是主要瓶頸
因爲內存價格較磁盤更爲昂貴,所以須要細心規劃 redis 的使用運維
CPU利用率性能
redis 的單線程設計,會致使多核 CPU 的資源利用率不高
須要同一臺機器上部署多個實例來提升 CPU 使用率大數據
大規模應用有坑
運維架構不完整,缺乏監控
不擅長應對高鏈接數 (>10K) 或大數據量 (>16G) 的場景
緩存(效率至上)
單副本,關閉主從複製
關閉 AOF / BGSAVE,減小磁盤 I/O 對性能影響
節點宕機,直接切空實例(丟失部分數據)
數據庫(兼顧安全)
雙副本,開啓主從複製
主庫關閉 AOF / BGSAVE
主掛切備,備掛換新備
大規模應用(橫向擴展)
搭建集羣,分攤壓力
讀寫分離,以一致性換取性能