麻豆黑色丝袜jk制服福利网站-麻豆精品传媒视频观看-麻豆精品传媒一二三区在线视频-麻豆精选传媒4区2021-在线视频99-在线视频a

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > redis緩存數(shù)據(jù),內(nèi)存占滿,怎么解決?

redis緩存數(shù)據(jù),內(nèi)存占滿,怎么解決?

來(lái)源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-10-13 02:35:04 1697135704

一、redis緩存數(shù)據(jù),內(nèi)存占滿,怎么解決

(1)默認(rèn)情況下,redis在使用的內(nèi)存空間超過(guò)maxmemory值時(shí),并不會(huì)淘汰數(shù)據(jù),也就是設(shè)置的noeviction策略。對(duì)應(yīng)到redis緩存,也就是值,一旦緩存被寫(xiě)滿了,再有寫(xiě)請(qǐng)求到來(lái)時(shí),redis不會(huì)提供服務(wù),而是直接返回錯(cuò)誤。(因此不推薦使用)

(2)對(duì)于 volatile-random、volatile-ttl、volatile-lru 和 volatile-lfu這四種淘汰策略,它們篩選的候選數(shù)據(jù)范圍,被限制在已經(jīng)設(shè)置了過(guò)期時(shí)間的鍵值對(duì)上。也正是因?yàn)槿绱耍词咕彺鏇](méi)有寫(xiě)滿,這些數(shù)據(jù)如果過(guò)期了,也會(huì)被刪除。

volatile-ttl 在篩選時(shí),會(huì)針對(duì)設(shè)置了過(guò)期時(shí)間的鍵值對(duì),根據(jù)過(guò)期時(shí)間的先后進(jìn)行刪除,越早過(guò)期的越先被刪除。volatile-random 就像它的名稱一樣,在設(shè)置了過(guò)期時(shí)間的鍵值對(duì)中,進(jìn)行隨機(jī)刪除。volatile-lru 會(huì)使用 LRU 算法篩選設(shè)置了過(guò)期時(shí)間的鍵值對(duì)。volatile-lfu 會(huì)使用 LFU 算法選擇設(shè)置了過(guò)期時(shí)間的鍵值對(duì)。(LFU算法會(huì)在LRU算法的基礎(chǔ)上,同時(shí)考慮數(shù)據(jù)的訪問(wèn)時(shí)效性和數(shù)據(jù)的訪問(wèn)次數(shù))

(3)對(duì)于allkeys-lru、allkeys-random、allkeys-lfu這三種淘汰策略的備選淘汰數(shù)據(jù)范圍,擴(kuò)大到了所有鍵值對(duì),無(wú)論這些鍵值對(duì)是否設(shè)置了過(guò)期時(shí)間。

allkeys-random 策略,從所有鍵值對(duì)中隨機(jī)選擇并刪除數(shù)據(jù);allkeys-lru 策略,使用 LRU 算法在所有數(shù)據(jù)中進(jìn)行篩選。allkeys-lfu 策略,使用 LFU 算法在所有數(shù)據(jù)中進(jìn)行篩選

也就是說(shuō),如果一個(gè)鍵值對(duì)被刪除策略選中了,即使它的過(guò)期時(shí)間還沒(méi)到,也需要被刪除。當(dāng)然,如果它的過(guò)期時(shí)間到了但未被策略選中,同樣也會(huì)被刪除。

怎么使用呢?

優(yōu)先使用allkeys-lru策略。這樣,可以充分利用LRU算法的優(yōu)勢(shì),把最近最常訪問(wèn)的數(shù)據(jù)留在緩存中,提升應(yīng)用的訪問(wèn)性能。如果你的業(yè)務(wù)數(shù)據(jù)中有明顯的冷熱數(shù)據(jù)的區(qū)分,建議使用allkeys-lru策略如果業(yè)務(wù)應(yīng)用中的數(shù)據(jù)訪問(wèn)頻率不大,沒(méi)有明顯的冷熱數(shù)據(jù)區(qū)分,建議使用allkeys-random策略,隨機(jī)淘汰數(shù)據(jù)即可如果業(yè)務(wù)有置頂?shù)男枨螅热缰庙斝侣劇⒅庙斠曨l,那么,可以使用 volatile-lru策略,同時(shí)不給這些置頂數(shù)據(jù)設(shè)置過(guò)期時(shí)間。這樣一來(lái),這些需要置頂?shù)臄?shù)據(jù)一直不會(huì)被刪除,而其他數(shù)據(jù)會(huì)在過(guò)期時(shí)根據(jù) LRU 規(guī)則進(jìn)行篩選。

LRU算法

LRU 算法的全稱是 Least Recently Used,從名字上就可以看出,這是按照最近最少使用的原則來(lái)篩選數(shù)據(jù),最不常用的數(shù)據(jù)會(huì)被篩選出來(lái),而最近頻繁使用的數(shù)據(jù)會(huì)留在緩存中。

那具體是怎么篩選的呢? LRU會(huì)把所有的數(shù)據(jù)組織成一個(gè)鏈表,鏈表的頭和尾分別表示MRU端和LRU段,分別代表最近最常使用的數(shù)據(jù)和最近最不常用的數(shù)據(jù)。

我們現(xiàn)在有數(shù)據(jù) 6、3、9、20、5。如果數(shù)據(jù) 20 和 3 被先后訪問(wèn),它們都會(huì)從現(xiàn)有的鏈表位置移到 MRU 端,而鏈表中在它們之前的數(shù)據(jù)則相應(yīng)地往后移一位。因?yàn)椋琇RU 算法選擇刪除數(shù)據(jù)時(shí),都是從 LRU 端開(kāi)始,所以把剛剛被訪問(wèn)的數(shù)據(jù)移到 MRU 端,就可以讓它們盡可能地留在緩存中。如果有一個(gè)新數(shù)據(jù) 15 要被寫(xiě)入緩存,但此時(shí)已經(jīng)沒(méi)有緩存空間了,也就是鏈表沒(méi)有空余位置了,那么,LRU 算法做兩件事:數(shù)據(jù) 15 是剛被訪問(wèn)的,所以它會(huì)被放到 MRU 端;算法把 LRU 端的數(shù)據(jù) 5 從緩存中刪除,相應(yīng)的鏈表中就沒(méi)有數(shù)據(jù) 5 的記錄了。

其實(shí),LRU 算法背后的想法非常樸素:它認(rèn)為剛剛被訪問(wèn)的數(shù)據(jù),肯定還會(huì)被再次訪問(wèn),所以就把它放在 MRU 端;長(zhǎng)久不訪問(wèn)的數(shù)據(jù),肯定就不會(huì)再被訪問(wèn)了,所以就讓它逐漸后移到 LRU 端,在緩存滿時(shí),就優(yōu)先刪除它。

不過(guò),LRU算法在實(shí)際實(shí)現(xiàn)時(shí),需要用鏈表管理所有的緩存數(shù)據(jù),這會(huì)帶來(lái)額外的空間開(kāi)銷。而且,當(dāng)有數(shù)據(jù)被訪問(wèn)時(shí),需要在鏈表上把該數(shù)據(jù)移動(dòng)到MRU端,如果有大量數(shù)據(jù)被訪問(wèn),就會(huì)帶來(lái)很多鏈表移動(dòng)操作,會(huì)很耗時(shí),進(jìn)而降低redis緩存性能。

所以,在redis中,LRU算法被做了簡(jiǎn)化,以減輕淘汰數(shù)據(jù)對(duì)緩存性能的影響。

延伸閱讀:

二、實(shí)例(instance)是什么

一組Oracle 后臺(tái)進(jìn)程/線程以及一個(gè)共享內(nèi)存區(qū),這些內(nèi)存由同一個(gè)計(jì)算機(jī)上運(yùn)行的線程/進(jìn)程所共享。這里可以維護(hù)易失的、非持久性內(nèi)容(有些可以刷新輸出到磁盤(pán))。就算沒(méi)有磁盤(pán)存儲(chǔ),數(shù)據(jù)庫(kù)實(shí)例也能存在。也許實(shí)例不能算是世界上最有用的事物,不過(guò)你完全可以把它想成是最有用的事物,這有助于對(duì)實(shí)例和數(shù)據(jù)庫(kù)劃清界線。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
為什么不用key-value型數(shù)據(jù)庫(kù)實(shí)現(xiàn)關(guān)系型數(shù)據(jù)庫(kù)?

一、為什么不用key-value型數(shù)據(jù)庫(kù)實(shí)現(xiàn)關(guān)系型數(shù)據(jù)庫(kù)TiDB / CockroachDB 都是基于 KV 模型做的分布式關(guān)系型數(shù)據(jù)庫(kù)。TiDB 實(shí)際上是構(gòu)建在 TiKV + p...詳情>>

2023-10-13 04:21:53
關(guān)系型數(shù)據(jù)庫(kù)是什么?

一、什么是關(guān)系型數(shù)據(jù)庫(kù)關(guān)系型數(shù)據(jù)庫(kù)是按照關(guān)系模型組織和存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)庫(kù)。它使用表格(表)的形式來(lái)表示和存儲(chǔ)數(shù)據(jù),每個(gè)表代表一個(gè)實(shí)體,而...詳情>>

2023-10-13 04:12:45
什么情況下需要使用分布式數(shù)據(jù)庫(kù)?

一、需要使用分布式數(shù)據(jù)庫(kù)的情況1、大規(guī)模數(shù)據(jù)存儲(chǔ)和處理當(dāng)數(shù)據(jù)量非常大時(shí),單個(gè)數(shù)據(jù)庫(kù)可能無(wú)法滿足存儲(chǔ)和處理的需求。分布式數(shù)據(jù)庫(kù)可以將數(shù)據(jù)...詳情>>

2023-10-13 04:09:56
人大金倉(cāng)數(shù)據(jù)庫(kù)是完全基于自研,是基于pc或是別的什么?

一、人大金倉(cāng)數(shù)據(jù)庫(kù)北京人大金倉(cāng)數(shù)據(jù)庫(kù)管理系統(tǒng)KingbaseES基于自主研究,它是北京人大金倉(cāng)信息技術(shù)股份有限公司經(jīng)過(guò)多年努力,開(kāi)發(fā)的具有自主知...詳情>>

2023-10-13 03:51:35
在Nodejs中使用MySQL數(shù)據(jù)庫(kù)的優(yōu)異實(shí)踐是什么?

一、在Nodejs中使用MySQL數(shù)據(jù)庫(kù)的優(yōu)異實(shí)踐1. 請(qǐng)一直使用pool,沒(méi)有何時(shí)。2. pool在程序初始化的時(shí)候創(chuàng)建,無(wú)需銷毀,從中抽取實(shí)例連接就行,無(wú)...詳情>>

2023-10-13 03:26:40
快速通道
主站蜘蛛池模板: 国产三级在线观看免费| 国产一级不卡毛片| 八戒网站免费观看视频| 欧美日韩国产另类一区二区三区| 波多野结衣porn| 久久4k岛国高清一区二区| 调教女m视频| 日韩电影毛片| 久久香蕉国产| 在线网站你懂得| 美女的扒开尿口让男人桶动态图| 丝袜足液精子免费视频| 精品视频一区二区三区| jux434被公每天侵犯的我| 冠希实干阿娇13分钟视频在线看| 免费视频日韩| 亚洲精品国产精品乱码不卞| 国产精品乱码一区二区三区| 国产在线高清视频无码| 波多野结衣教师诱惑| 无毒不卡| 最近免费中文字幕大全高清片| 日本三人交xxx69视频| 一二三四视频社区在线| 三级黄在线观看| 国产真实交换多p免视频| 日本成人在线免费| 欧美国产激情二区三区| 黄色a级免费| 亚洲国产视频网| а√最新版地址在线天堂| 美女扒开尿口让男人捅| 欧美zoozzooz在线观看| 啦啦啦手机完整免费高清观看 | 高贵的你韩剧免费观看国语版| 看看屋在线看看电影| 男人边吃奶边做性视频| 国产亚洲精品一品区99热 | 夜夜春宵伴娇全文阅读| 四虎免费看片| 亚洲欧美四级在线播放|