一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

redis 面試總結(jié)篇

 jamedbai 2018-03-18

1. 使用Redis有哪些好處?

(1) 速度快,因為數(shù)據(jù)存在內(nèi)存中,類似于HashMap,HashMap的優(yōu)勢就是查找和操作的時間復(fù)雜度都是O(1)

(2) 支持豐富數(shù)據(jù)類型,支持string,list,set,sorted set,hash

(3) 支持事務(wù),操作都是原子性,所謂的原子性就是對數(shù)據(jù)的更改要么全部執(zhí)行,要么全部不執(zhí)行

(4) 豐富的特性:可用于緩存,消息,按key設(shè)置過期時間,過期后將會自動刪除


2. redis相比memcached有哪些優(yōu)勢?

(1) memcached所有的值均是簡單的字符串,redis作為其替代者,支持更為豐富的數(shù)據(jù)類型

(2) redis的速度比memcached快很多

(3) redis可以持久化其數(shù)據(jù)

(4)Redis支持?jǐn)?shù)據(jù)的備份,即master-slave模式的數(shù)據(jù)備份。

(5)、使用底層模型不同

它們之間底層實現(xiàn)方式 以及與客戶端之間通信的應(yīng)用協(xié)議不一樣。

Redis直接自己構(gòu)建了VM 機制 ,因為一般的系統(tǒng)調(diào)用系統(tǒng)函數(shù)的話,會浪費一定的時間去移動和請求。

(6)value大?。簉edis最大可以達到1GB,而memcache只有1MB



3. redis常見性能問題和解決方案:

(1) Master最好不要做任何持久化工作,如RDB內(nèi)存快照和AOF日志文件

(Master寫內(nèi)存快照,save命令調(diào)度rdbSave函數(shù),會阻塞主線程的工作,當(dāng)快照比較大時對性能影響是非常大的,會間斷性暫停服務(wù),所以Master最好不要寫內(nèi)存快照;AOF文件過大會影響Master重啟的恢復(fù)速度)

(2) 如果數(shù)據(jù)比較重要,某個Slave開啟AOF備份數(shù)據(jù),策略設(shè)置為每秒同步一次

(3) 為了主從復(fù)制的速度和連接的穩(wěn)定性,Master和Slave最好在同一個局域網(wǎng)內(nèi)

(4) 盡量避免在壓力很大的主庫上增加從庫

(5) 主從復(fù)制不要用圖狀結(jié)構(gòu),用單向鏈表結(jié)構(gòu)更為穩(wěn)定,即:Master <- Slave1 <- Slave2 <- Slave3...

這樣的結(jié)構(gòu)方便解決單點故障問題,實現(xiàn)Slave對Master的替換。如果Master掛了,可以立刻啟用Slave1做Master,其他不變。


redis的一些其他特點:

(1)Redis是單進程單線程的

redis利用隊列技術(shù)將并發(fā)訪問變?yōu)榇性L問,消除了傳統(tǒng)數(shù)據(jù)庫串行控制的開銷

(2)讀寫分離模型

通過增加Slave DB的數(shù)量,讀的性能可以線性增長。為了避免Master DB的單點故障,集群一般都會采用兩臺Master DB做雙機熱備,所以整個集群的讀和寫的可用性都非常高。
讀寫分離架構(gòu)的缺陷在于,不管是Master還是Slave,每個節(jié)點都必須保存完整的數(shù)據(jù),如果在數(shù)據(jù)量很大的情況下,集群的擴展能力還是受限于單個節(jié)點的存儲能力,而且對于Write-intensive類型的應(yīng)用,讀寫分離架構(gòu)并不適合。

(3)數(shù)據(jù)分片模型

為了解決讀寫分離模型的缺陷,可以將數(shù)據(jù)分片模型應(yīng)用進來。

可以將每個節(jié)點看成都是獨立的master,然后通過業(yè)務(wù)實現(xiàn)數(shù)據(jù)分片。

結(jié)合上面兩種模型,可以將每個master設(shè)計成由一個master和多個slave組成的模型。

(4)Redis的回收策略

  • volatile-lru:從已設(shè)置過期時間的數(shù)據(jù)集(server.db[i].expires)中挑選最近最少使用的數(shù)據(jù)淘汰

  • volatile-ttl:從已設(shè)置過期時間的數(shù)據(jù)集(server.db[i].expires)中挑選將要過期的數(shù)據(jù)淘汰

  • volatile-random:從已設(shè)置過期時間的數(shù)據(jù)集(server.db[i].expires)中任意選擇數(shù)據(jù)淘汰

  • allkeys-lru:從數(shù)據(jù)集(server.db[i].dict)中挑選最近最少使用的數(shù)據(jù)淘汰

  • allkeys-random:從數(shù)據(jù)集(server.db[i].dict)中任意選擇數(shù)據(jù)淘汰

  • no-enviction(驅(qū)逐):禁止驅(qū)逐數(shù)據(jù)

  • 注意這里的6種機制,volatileallkeys規(guī)定了是對已設(shè)置過期時間的數(shù)據(jù)集淘汰數(shù)據(jù)還是從全部數(shù)據(jù)集淘汰數(shù)據(jù),后面的lru、ttl以及random是三種不同的淘汰策略,再加上一種no-enviction永不回收的策略。

      使用策略規(guī)則:

      1、如果數(shù)據(jù)呈現(xiàn)冪律分布,也就是一部分?jǐn)?shù)據(jù)訪問頻率高,一部分?jǐn)?shù)據(jù)訪問頻率低,則使用allkeys-lru

      2、如果數(shù)據(jù)呈現(xiàn)平等分布,也就是所有的數(shù)據(jù)訪問頻率都相同,則使用allkeys-random






    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    国产精品一区二区成人在线| 色婷婷激情五月天丁香| 亚洲高清中文字幕一区二区三区| 国产主播精品福利午夜二区| 最近最新中文字幕免费| 久久99一本色道亚洲精品| 久热在线视频这里只有精品| 99香蕉精品视频国产版| 国产精品日韩欧美一区二区| 欧美日韩中黄片免费看| 欧美午夜视频免费观看| 男人的天堂的视频东京热| 免费在线观看欧美喷水黄片| 在线免费视频你懂的观看| 欧美国产日本高清在线| 日韩一级毛一欧美一级乱| 欧美丰满人妻少妇精品| 国产精品日韩欧美第一页| 久久亚洲成熟女人毛片| 色婷婷人妻av毛片一区二区三区| 日韩成人h视频在线观看 | 亚洲二区欧美一区二区| 午夜精品在线视频一区| 午夜精品一区二区av| 亚洲妇女黄色三级视频| 91人妻丝袜一区二区三区| 欧美日韩乱一区二区三区| 国产又大又猛又粗又长又爽| 欧美精品中文字幕亚洲| 99国产精品国产精品九九 | 欧美人妻一区二区三区| 亚洲国产精品久久琪琪| 亚洲精品一区二区三区免| 99热在线播放免费观看| 亚洲专区中文字幕在线| 欧美精品亚洲精品一区| 国产在线成人免费高清观看av| 黑鬼糟蹋少妇资源在线观看| 四季精品人妻av一区二区三区| 日本午夜精品视频在线观看| 免费观看在线午夜视频|