創(chuàng)新互聯(lián)教你設(shè)置Redis的LRU策略

2023-11-17    分類: 網(wǎng)站建設(shè)

概念

LRU(Least Recently Used)最近最少使用算法是眾多置換算法中的一種。

maxmemory

Redis中有一個maxmemory概念,主要是為了將使用的內(nèi)存限定在一個固定的大小。Redis用到的LRU 算法,是一種近似的LRU算法。

設(shè)置maxmemory

127.0.0.1:6379> CONFIG GET maxmemory
1) "maxmemory"
2) "0"
127.0.0.1:6379> CONFIG SET maxmemory 100Mb
OK
127.0.0.1:6379> CONFIG GET maxmemory
1) "maxmemory"
2) "104857600"

注意,在64bit系統(tǒng)下,maxmemory設(shè)置為0表示不限制Redis內(nèi)存使用,在32bit系統(tǒng)下,maxmemory隱式不能超過3Gb。當Redis內(nèi)存使用達到指定的限制時,就需要選擇一個置換的策略。

置換策略

當Redis內(nèi)存使用達到maxmemory時,需要選擇設(shè)置好的maxmemory-policy進行對老數(shù)據(jù)的置換。

下面是可以選擇的置換策略:

  1. noeviction: 不進行置換,表示即使內(nèi)存達到上限也不進行置換,所有能引起內(nèi)存增加的命令都會返回error

  2. allkeys-lru: 優(yōu)先刪除掉最近最不經(jīng)常使用的key,用以保存新數(shù)據(jù)

  3. volatile-lru: 只從設(shè)置失效(expire set)的key中選擇最近最不經(jīng)常使用的key進行刪除,用以保存新數(shù)據(jù)

  4. allkeys-random: 隨機從all-keys中選擇一些key進行刪除,用以保存新數(shù)據(jù)

  5. volatile-random: 只從設(shè)置失效(expire set)的key中,選擇一些key進行刪除,用以保存新數(shù)據(jù)

  6. volatile-ttl: 只從設(shè)置失效(expire set)的key中,選出存活時間(TTL)最短的key進行刪除,用以保存新數(shù)據(jù)

volatile-lru和volatile-random經(jīng)常在一個Redis實例既做cache又做持久化的情況下用到,然而,更好的選擇使用兩個Redis實例來解決這個問題。設(shè)置是失效時間expire會占用一些內(nèi)存,而采用allkeys-lru就沒有必要設(shè)置失效時間,進而更有效的利用內(nèi)存。

3 置換策略是如何工作的

理解置換策略的執(zhí)行方式是非常重要的,比如:

  1. 客戶端執(zhí)行一條新命令,導(dǎo)致數(shù)據(jù)庫需要增加數(shù)據(jù)(比如set key value)

  2. Redis會檢查內(nèi)存使用,如果內(nèi)存使用超過maxmemory,就會按照置換策略刪除一些key

  3. 新的命令執(zhí)行成功

我們持續(xù)的寫數(shù)據(jù)會導(dǎo)致內(nèi)存達到或超出上限maxmemory,但是置換策略會將內(nèi)存使用降低到上限以下。

如果一次需要使用很多的內(nèi)存(比如一次寫入一個很大的set),那么,Redis的內(nèi)存使用可能超出大內(nèi)存限制一段時間。

設(shè)置轉(zhuǎn)換策略

127.0.0.1:6379> CONFIG GET maxmemory-policy
1) "maxmemory"
2) "0"
127.0.0.1:6379> CONFIG SET maxmemory-policy allkeys-lru
OK
127.0.0.1:6379> CONFIG GET maxmemory-policy
1) "maxmemory-policy"

2) "allkeys-lru"

分享文章:創(chuàng)新互聯(lián)教你設(shè)置Redis的LRU策略
URL分享:http://m.kartarina.com/news44/294894.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設(shè)、響應(yīng)式網(wǎng)站品牌網(wǎng)站建設(shè)網(wǎng)站改版建站公司網(wǎng)頁設(shè)計公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)
主站蜘蛛池模板: 亚洲AV成人无码网天堂| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 日韩免费a级毛片无码a∨| 特级无码a级毛片特黄| 国产做无码视频在线观看浪潮 | 国产精品无码A∨精品影院| 性色AV蜜臀AV人妻无码| 亚洲va无码手机在线电影| 无码 免费 国产在线观看91| 久久精品无码午夜福利理论片| 无码精品人妻一区| 6080YYY午夜理论片中无码| 国产成年无码AV片在线韩国| 亚洲精品无码专区| 无码专区狠狠躁躁天天躁| 精品国产毛片一区二区无码| 中文字幕无码成人免费视频| 亚洲日韩精品无码一区二区三区| 免费无码一区二区| 无码中文字幕人妻在线一区二区三区 | 久久av无码专区亚洲av桃花岛| 亚洲国产精品无码久久九九 | 午夜精品久久久久久久无码| 啊灬啊别停灬用力啊无码视频| 亚洲熟妇无码乱子AV电影| 国产99久久九九精品无码| 无码天堂va亚洲va在线va| 无码中文字幕乱码一区| 中文字幕久久久人妻无码| 亚洲av专区无码观看精品天堂| 无码人妻熟妇AV又粗又大| 亚洲AV无码一区东京热久久| 国产产无码乱码精品久久鸭| 国产亚洲精久久久久久无码77777| 色欲香天天综合网无码| 日韩精品无码免费视频| 亚洲Aⅴ无码一区二区二三区软件| 国产成年无码久久久久下载| 四虎成人精品国产永久免费无码| 日韩无码系列综合区| 久久久久亚洲精品无码网址|