關於redis,學會這8點就夠了


1、redis是什么

redis是一種支持Key-Value等多種數據結構的存儲系統。可用於緩存、事件發布或訂閱、高速隊列等場景。該數據庫使用ANSI C語言編寫,支持網絡,提供字符串、哈希、列表、隊列、集合結構直接存取,基於內存,可持久化。

 

2、支持的語言

 

3、redis的應用場景有哪些

1、會話緩存(最常用)
2、消息隊列,比如支付
3、活動排行榜或計數
4、發布、訂閱消息(消息通知)
5、商品列表、評論列表等
 

4、redis數據類型
Redis一共支持五種數據類:string(字符串)、hash(哈希)、list(列表)、set(集合)和zset(sorted set 有序集合)。

1)string(字符串)
它是redis最基本的數據類型,一個key對應一個value,需要注意是一個鍵值最大存儲512MB。

2)hash(哈希)
redis hash是一個鍵值對的集合, 是一個string類型的field和value的映射表,適合用於存儲對象

3)list(列表)
是redis簡單的字符串列表,它按插入順序排序

4)set(集合)
是string類型的無序集合,也不可重復

5)zset(sorted set 有序集合)
是string類型的有序集合,也不可重復
sorted set中的每個元素都需要指定一個分數,根據分數對元素進行升序排序,如果多個元素有相同的分數,則以字典序進行升序排序,sorted set 因此非常適合實現排名

 

5、redis服務相關的命令

slect           #選擇數據庫(數據庫編號0-15)
quit             #退出連接
info             #獲得服務的信息與統計
monitor       #實時監控
config get   #獲得服務配置
flushdb       #刪除當前選擇的數據庫中的key
flushall       #刪除所有數據庫中的key

 

6、redis的發布與訂閱

redis發布與訂閱(pub/sub)是它的一種消息通信模式,一方發送信息,一方接收信息。
下圖是三個客戶端同時訂閱同一個頻道

下圖是有新信息發送給頻道1時,就會將消息發送給訂閱它的三個客戶端

 

 

7、redis持久化

redis持久有兩種方式:Snapshotting(快照),Append-only file(AOF)

Snapshotting(快照)

1、將存儲在內存的數據以快照的方式寫入二進制文件中,如默認dump.rdb中
2、save 900 1 

#900秒內如果超過1個Key被修改,則啟動快照保存
3、save 300 10 

#300秒內如果超過10個Key被修改,則啟動快照保存
4、save 60 10000 

#60秒內如果超過10000個Key被修改,則啟動快照保存
 

Append-only file(AOF)

1、使用AOF持久時,服務會將每個收到的寫命令通過write函數追加到文件中(appendonly.aof)
2、AOF持久化存儲方式參數說明
    appendonly yes  

           #開啟AOF持久化存儲方式 
    appendfsync always 

         #收到寫命令后就立即寫入磁盤,效率最差,效果最好
    appendfsync everysec

         #每秒寫入磁盤一次,效率與效果居中
    appendfsync no 

         #完全依賴OS,效率最佳,效果沒法保證

 

8、redis 性能測試

自帶相關測試工具

實際測試同時執行100萬的請求

 

【本文由中間件小哥收集整理自“民工哥Linux運維”】


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM