一、什么是redis、redis有哪些特性、redis有哪些應用場景、redis的版本
1. 什么是redis
redis是一種基於鍵值對(key-value)數據庫,其中value可以為string、hash、list、set、zset等多種數據結構,可以滿足很多應用場景。還提供了鍵過期,發布訂閱,事務,流水線,等附加功能,
流水線: Redis 的流水線功能允許客戶端一次將多個命令請求發送給服務器, 並將被執行的多個命令請求的結果在一個命令回復中全部返回給客戶端, 使用這個功能可以有效地減少客戶端在執行多個命令時需要與服務器進行通信的次數。
2. redis有哪些特性
1〉速度快,數據放在內存中,官方給出的讀寫性能10萬/S,與機器性能也有關
a. 數據放內存中是速度快的主要原因
b. C語言實現,與操作系統距離近
c. 使用了單線程架構,預防多線程可能產生的競爭問題
2〉鍵值對的數據結構服務器
3〉豐富的功能:鍵過期,發布訂閱,事務,流水線.....
4〉簡單穩定:單線程
5〉持久化:發生斷電或機器故障,數據可能會丟失,持久化到硬盤
6〉主從復制:實現多個相同數據的redis副本
7〉高可用和分布式:哨兵機制實現高可用,保證redis節點故障發現和自動轉移
8〉客戶端語言多:java php python c c++ nodejs等
3. redis有哪些應用場景
1. 緩存:合理使用緩存加快數據訪問速度,降低后端數據源壓力
2. 排行榜:按照熱度排名,按照發布時間排行,主要用到列表和有序集合
3. 計數器應用:視頻網站播放數,網站瀏覽數,使用redis計數
4. 社交網絡:贊、踩、粉絲、下拉刷新
5. 消息隊列:發布和訂閱
4.redis的版本
版本號第二位為奇數,為非穩定版本(2.7、2.9、3.1)
第二為偶數,為穩定版本(2.6、2.8、3.0)
當前奇數版本是下一個穩定版本的開發版本,如2.9是3.0的開發版本