Redis 記憶體用完會怎樣?

2021-10-25 08:33:07 字數 812 閱讀 8144

在某些極端情況下,軟體為了能正常執行會做一些保護性的措施,比如執行記憶體超過最大值之後的處理,以及鍵值過期之後的處理等,都屬於此類問題,而專業而全面的回答這些問題恰好是乙個工程師所具備的優秀品質。

我們本文的面試題是 redis 記憶體用完之後會怎麼?

redis 的記憶體用完指的是 redis 的執行記憶體超過了 redis 設定的最大記憶體,此值可以通過 redis 的配置檔案 redis.conf 進行設定,設定項為 maxmemory,我們可以使用config get maxmemory來檢視設定的最大執行記憶體,如下所示:

127.0.0.1:6379> config get maxmemory

1) "maxmemory"

2) "0"

當此值為 0 時,表示沒有記憶體大小限制,直到耗盡機器中所有的記憶體為止,這是 redis 伺服器端在 64 位作業系統下的預設值。

小貼士:32 位作業系統,預設最大記憶體值為 3gb。

當 redis 的記憶體用完之後就會觸發 redis 的記憶體淘汰策略,執行流程如下圖所示:

int processcommand(client *c) {

// 最大記憶體檢測

if (server.maxmemory && !server.lua_timedout) {

int out_of_me

未來會怎樣

伴隨visual studio 2008 的發布,net 3.5也一起來了,j2ee風采依舊,python風頭正勁,未來會怎樣?我們究竟要學多少新的東西才能不被日新月異的技術浪頭打沉在海底?或許本不應該為了技術而技術。qq不也很成功麼,易趣 之流不也很成功麼,支援他們業務的技術也並不是諸如人工智慧之...

多次flose fp 會怎樣?

能不能多次對同乙個檔案描述符呼叫fclose?答案是不行的。為啥不行,我們需要看看fclose到底幹了什麼 fclose關閉的是乙個檔案流,當呼叫fclose時,將會使使用者態 c庫 緩衝區中的資料重新整理到核心區域 或通過socket傳送,或者僅僅寫回硬碟 於此同時,fclose會呼叫free來釋...

會聲會影怎樣定格字幕

製作定格字幕主要有一下三種方法 1 標題動畫 會聲會影標題動畫中的除了縮放和下降,其他的效果都可以設定暫停,暫停的時間可以選擇 短,中,長或自定義,通過移動左側預覽框下的滑塊來調整暫停的時間。2 自定義動作 如果需要製作移動到中間暫停一段時間,然後接著運動,可以使用自定義動作進行設定,在中間兩個點之...