1. 程式人生 > >redis知識總結

redis知識總結

per 後者 垃圾郵件 對象 有序 布隆過濾器 隊列 zip 地圖

redis7中數據結構:字符串,hash,集合,列表,有序集合,地理位置GEO,hyperloglog 字符串最簡單和memcache類似的key-value存儲內部數據結構是SDS(簡單動態字符),可以做分布式鎖,setnx。 hash可以存儲對象單獨屬性,內部編碼有hash和ziplist。用ziplist會更省內存。但編碼受字符串大小和key的多少限制。 集合可以去重,統計大小,交集並集,差集,如好友關註列表,點贊等。 列表list可以做消息隊列,推薦列表,分頁等。 GEO可以獲取地理位置,用做地圖推薦。 位圖setbit可以統計獨立ip訪問量。 hyperloglog也可統計訪問量,只占用12kb統計幾十億的訪問量,但統計不準確。 位圖和hash函數構建布隆過濾器可以過濾垃圾郵件,篩選,如50億電話號快速準確判斷10萬個電話號碼是否存在。 redis sentinal,redis cluster,是redis高可用架構,前者簡單,後者復雜。 redis big key hotkey解決方法:拆分key到多個實例,拆分value,加機器,加內存,加監控,合理利用數據結構,數據預熱。 redis是單線程的,一個耗時的命令會把服務阻塞,要小心使用一些慢查詢,把服務卡死。如keys hgetall del 等

redis知識總結