- redis基本的數據類型:String,list,set,hashMap,sort Set
- redis 用於分佈式鎖的原理:setnx (如果不存在則設置,否則啥也不動)
- 緩存清理基於LRU算法
- redis持久化的方式: redis持久化的方式主要有兩種
AOF(追加):體積大,恢復慢,數據完整性較強,較大的時候,會自動進行壓縮
RDB(快照):容丟失數據,容易恢復
最合理的方式,兩個一起使用,基於性能的考慮,主最好不要進行AOF,或者RDB.
- redis集羣建立的方法
1. redis 2.8 以前 哨兵
模式:一主多從,多個哨兵,主掛了,哨兵自動選主
缺點:難以水平擴容,短暫時間會出現不可用,會丟數據
2. 中間件代理 客戶端代理 ,twemproxy
3. redis 3.0 自帶集羣模式
模式:多主多從,主從直接自帶FailOver,存儲採用分片,各個節點之間P2P通信,去中心化
缺點:只能半自動擴容(需要手動遷移數據),某個主掛了,並且從數量不夠,整個集羣會不用
- redis的一些用途
緩存
分佈式鎖(可靠性需要考慮)
- redis的一些自我思考
不管是哪種集羣模式,擴容都是一個蛋疼的問題。尤其是哨兵,只有一主。
其次,redis 在高可用方面不如人意,一旦出現問題,很有可能出現丟數據,某一節點掛了之後,總有一段時間會出現不可用,所以這在使用時得非常注意場景。及做好容錯工作。。或許設計之初,就主要用來作爲緩存,所以在高可用方面還是一般般。