redis特性

Redis全稱(chēng)是Remote Dictionary Server

速度快

  1. 官方給出的數(shù)字是讀寫(xiě)性能可以達(dá)到10萬(wàn)/秒
  2. Redis的所有數(shù)據(jù)都是存放在內(nèi)存中的
  3. Redis是用C語(yǔ)言實(shí)現(xiàn)的
  4. Redis使用了單線(xiàn)程架構(gòu),預(yù)防了多線(xiàn)程可能產(chǎn)生的競(jìng)爭(zhēng)問(wèn)題

基于鍵值對(duì)的數(shù)據(jù)結(jié)構(gòu)服務(wù)器

  1. Redis主要提供了5種數(shù)據(jù)結(jié)構(gòu):字符串、哈希、列表、集合、有序集合,同時(shí)在字符串的基礎(chǔ)之上演變出了位圖(Bitmaps)和Hyper-LogLog兩種數(shù)據(jù)結(jié)構(gòu)。

豐富的功能
除了5中數(shù)據(jù)結(jié)構(gòu),Redis還提供了許多額外的功能:

  • 提供了鍵過(guò)期功能,可以用來(lái)實(shí)現(xiàn)緩存
  • 提供了發(fā)布訂閱功能,可以用來(lái)實(shí)現(xiàn)消息系統(tǒng)
  • 支持Lua腳本功能,可以利用Lua創(chuàng)造出新的Redis命令
  • 提供了簡(jiǎn)單的事務(wù)功能,可以利用Lua創(chuàng)造出新的Redis命令
  • 提供了流水線(xiàn)(Pipeline)功能,這樣客戶(hù)端能將一批命令一次性傳到Redis,減少了網(wǎng)絡(luò)的開(kāi)銷(xiāo)。

簡(jiǎn)單穩(wěn)定

  • 代碼量相對(duì)少
  • 不需要依賴(lài)操作系統(tǒng)中的類(lèi)庫(kù)
  • Redis自己實(shí)現(xiàn)了事件處理的相關(guān)功能
  • 作者維護(hù)的上千個(gè)Redis為例,沒(méi)有出現(xiàn)過(guò)因?yàn)镽edis自身bug而宕機(jī)的情況

客戶(hù)端語(yǔ)言多

  • Java、PHP、Python、C、C++、Nodejs

持久化

  • RDB、AOF

主從復(fù)制

高可用和分布式

  • Redis從2.8開(kāi)始正式提供了Redis Sentinel
  • Redis從3.0開(kāi)始正式提供了Redis Cluster,它是Redis真正的分布式實(shí)現(xiàn),提供了高可用、讀寫(xiě)和容量的擴(kuò)展性。

Redis可以做什么

  1. 緩存
  2. 排行榜系統(tǒng)
  3. 計(jì)數(shù)器
  4. 社交網(wǎng)絡(luò)
    -- 贊/踩、粉絲、共同好友/喜好、推送、下拉刷新等是社交網(wǎng)站的必備功能,由于社交網(wǎng)站訪(fǎng)問(wèn)量通常比較大,而且傳統(tǒng)的關(guān)系型數(shù)據(jù)不太適合保存這種類(lèi)型的數(shù)據(jù),Redis提供的數(shù)據(jù)結(jié)構(gòu)可以相對(duì)比較容易地實(shí)現(xiàn)這些功能。
  5. 消息隊(duì)列系統(tǒng)
    -- 訂閱功能和阻塞隊(duì)列

Redis不可以做什么
站在數(shù)據(jù)規(guī)模和數(shù)據(jù)冷熱的角度來(lái)進(jìn)行分析

  1. 數(shù)據(jù)量太大,則不適合用Redis存儲(chǔ)
  2. 冷數(shù)據(jù)需要存儲(chǔ)在Redis,熱數(shù)據(jù)存儲(chǔ)在Redis可以加速讀寫(xiě),也可以減輕后端存儲(chǔ)的負(fù)載
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容