一、什麼是redis
Redis是一個高性能的key-value存儲系統。它支持存儲的value類型相對更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set --有序集合)和hash(哈希類型)。這些數據類型都支持push/pop、add/remove及取交集並集和差集及更豐富的操作,而且這些操作都是原子性的。在此基礎上,Redis支持各種不同方式的排序。爲了保證效率,數據都是緩存在內存中。區別的是Redis會週期性的把更新的數據寫入磁盤或者把修改操作寫入追加的記錄文件,並且在此基礎上實現了master-slave(主從)同步。
Redis支持主從同步。數據可以從主服務器向任意數量的從服務器上同步,從服務器可以是關聯其他從服務器的主服務器。這使得Redis可執行單層樹複製。存盤可以有意無意的對數據進行寫操作。由於完全實現了發佈/訂閱機制,使得從數據庫在任何地方同步樹時,可訂閱一個頻道並接收主服務器完整的消息發佈記錄。同步對讀取操作的可擴展性和數據冗餘很有幫助。
它通過提供多種鍵值數據類型來適應不同場景下的存儲需求,目前爲止Redis支持的鍵值數據類型如下:
1、字符串類型
2、散列類型
3、列表類型
4、集合類型
5、有序集合類型。
二、redis的應用場景
1、緩存(數據查詢、短連接、新聞內容、商品內容等等)。(最多使用)
2、分佈式集羣架構中的session分離。
3、聊天室的在線好友列表。
4、任務隊列。(秒殺、搶購、12306等等)
5、應用排行榜。
6、網站訪問統計。
7、數據過期處理(可以精確到毫秒)
下一節redis(二)就開始我們的redis之旅吧。