tft每日頭條

 > 圖文

 > redis内存使用建議

redis内存使用建議

圖文 更新时间:2025-02-12 20:11:01

redis内存使用建議?VM-虛拟内存機制就是暫時把不經常訪問的數據(冷數據)從内存中交換到磁盤中,從而騰出寶貴的内存空間存儲其他需要訪問的熱數據,我來為大家科普一下關于redis内存使用建議?下面希望有你要的答案,我們一起來看看吧!

redis内存使用建議(redis虛拟内存什麼東西)1

redis内存使用建議

VM-虛拟内存機制就是暫時把不經常訪問的數據(冷數據)從内存中交換到磁盤中,從而騰出寶貴的内存空間存儲其他需要訪問的熱數據。

redis提高數據庫容量的辦法:

1、集群模式,将數據分散到多個redis分片中(常用方案)

2、使用VM-虛拟内存,将數據交換到磁盤中(不常用,數據交換過程中會影響性能)

VM的工作機制,分為兩種:一種是vm-max-threads=0,一種是vm-max-threads>0

第一種vm-max-threads=0

數據換出:主線程定期檢查使用的内存大小,如果發現内存超出最大的上限,會直接以阻塞的方式,将選中的對象換出到磁盤上(保存磁盤文件),并釋放對象占用的内存,此過程會一直重複,直到一下條件任意滿足:

a、内存使用降到最大限制以下

b、設置交換文件的數量達到上限

c、幾乎全部的對象都被交換到磁盤了

數據換入:當有client請求key對應的value時,主線程會以阻塞的方式從換出文件中加載對應的value,加載時會阻塞所有client

第二種vm-max-threads>0

數據換出:當主線程檢測到内存超過最大限制,會将選中的交換數據放到一個隊列中交由工作線程後台處理,主線程會繼續處理client請求

數據換入:當client請求key對應的value時,主線程會先阻塞當前client,讓後将加載對象的信息放到一個隊列中,讓工作線程去處理,此時主線程處理其他client請求,當工作線程處理完畢後通知主線程,主線程再去執行被阻塞的client命令。這種方式隻會阻塞單個client

其他:

适合key小,value大的場景

選擇交換的value時,會選擇長時間不用,且value更大的對象

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关圖文资讯推荐

热门圖文资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved