0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

redis六種淘汰策略

Android編程精選 ? 來源:CSDN ? 作者:CSDN ? 2022-08-01 10:23 ? 次閱讀

redis是個基于內(nèi)存的緩存數(shù)據(jù)庫,既然是基于內(nèi)存的,那肯定就會有存滿的時候

如果真的存滿了,再有新的數(shù)據(jù)過來肯定就存不進去了

此時redis會執(zhí)行既定的一些淘汰策略,本文大概講一下redis六種淘汰策略

01六種淘汰策略

1.noeviction(默認策略):對于寫請求不再提供服務,直接返回錯誤(DEL請求和部分特殊請求除外)

2.allkeys-lru:從所有key中使用LRU算法進行淘汰(LRU算法:即最近最少使用算法)

3.volatile-lru:從設置了過期時間的key中使用LRU算法進行淘汰

4.allkeys-random:從所有key中隨機淘汰數(shù)據(jù)

5.volatile-random:從設置了過期時間的key中隨機淘汰

6.volatile-ttl:在設置了過期時間的key中,淘汰過期時間剩余最短的

當使用volatile-lru、volatile-random、volatile-ttl這三種策略時,如果沒有key可以被淘汰,則和noeviction一樣返回錯誤

02如何獲取及設置內(nèi)存淘汰策略

1、獲取當前內(nèi)存淘汰策略:

127.0.0.1:6379> configgetmaxmemory-policy

可以看到當前使用的默認的noeviction策略

2、獲取Redis能使用的最大內(nèi)存大小

127.0.0.1:6379> configgetmaxmemory

如果不設置最大內(nèi)存大小或者設置最大內(nèi)存大小為0,在64位操作系統(tǒng)下不限制內(nèi)存大小,在32位操作系統(tǒng)下最多使用3GB內(nèi)存。32 位的機器最大只支持 4GB 的內(nèi)存,而系統(tǒng)本身就需要一定的內(nèi)存資源來支持運行,所以 32 位機器限制最大 3 GB 的可用內(nèi)存

3、設置淘汰策略

通過配置文件設置淘汰策略(修改redis.conf文件):

maxmemory-policy allkeys-lru

通過命令修改淘汰策略:

127.0.0.1:6379> configsetmaxmemory-policyallkeys-lru

4、設置Redis最大占用內(nèi)存大小

#設置Redis最大占用內(nèi)存大小為100M
127.0.0.1:6379> configsetmaxmemory100mb

審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 數(shù)據(jù)庫

    關注

    7

    文章

    3752

    瀏覽量

    64233
  • Redis
    +關注

    關注

    0

    文章

    370

    瀏覽量

    10830

原文標題:Redis 6種淘汰機制,看看你知道哪些?

文章出處:【微信號:AndroidPush,微信公眾號:Android編程精選】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    六種dcdc變換器特點是什么

    DC-DC變換器是將一個電壓值的直流電源轉換成另一個電壓值的直流電源的電子設備。它們在電源管理、電池充電、便攜式電子設備等領域中非常重要。以下是六種常見的DC-DC變換器及其特點的介紹: 降壓變換器
    的頭像 發(fā)表于 09-30 16:27 ?289次閱讀

    水冷液冷負載系統(tǒng)的六種基本類型

    您可以選擇六種基本類型的冷卻系統(tǒng),以滿足負載的冷卻需求。每個人都有其優(yōu)點和缺點。本文旨在識別不同類型的冷卻系統(tǒng)并確定它們的優(yōu)缺點,以便您可以根據(jù)自己的需求做出明智的選擇。
    的頭像 發(fā)表于 07-08 07:35 ?408次閱讀
    水冷液冷負載系統(tǒng)的<b class='flag-5'>六種</b>基本類型

    快速搞懂GPIO控制器的六種模式

    六種常見模式,我們特地整理了這篇文章。??焖俑愣瓽PIO控制器的六種模式我們拿STM32芯片舉例,下圖是GPIO控制器的簡單框圖:通過框圖可以分為輸入和輸出兩個
    的頭像 發(fā)表于 05-18 08:04 ?1358次閱讀
    快速搞懂GPIO控制器的<b class='flag-5'>六種</b>模式

    Redis開源版與Redis企業(yè)版,怎么選用?

    點擊“藍字”關注我們數(shù)以千計的企業(yè)和數(shù)以百萬計的開發(fā)人員Redis開源版來構建應用程序。但隨著用戶數(shù)量、數(shù)據(jù)量和地區(qū)性的增加,成本、可擴展性、運營和可用性等問題也隨之而來。Redis企業(yè)版
    的頭像 發(fā)表于 04-04 08:04 ?901次閱讀
    <b class='flag-5'>Redis</b>開源版與<b class='flag-5'>Redis</b>企業(yè)版,怎么選用?

    Redis的LRU實現(xiàn)和應用

    在編程中,計數(shù)器是一基本但強大的工具,用于跟蹤和管理數(shù)據(jù)和資源。本文將深入探討不同類型的計數(shù)器的應用,從Redis的LRU(最近最少使用)緩存淘汰算法的實現(xiàn),到如何在內(nèi)存受限的環(huán)境中有效地使用計數(shù)器,再到普通計數(shù)器的巧妙應用。
    的頭像 發(fā)表于 12-15 09:24 ?559次閱讀

    六種主流物聯(lián)網(wǎng)無線技術盤點:一文治愈你的無線選擇困難癥!

    六種主流物聯(lián)網(wǎng)無線技術盤點:一文治愈你的無線選擇困難癥!
    的頭像 發(fā)表于 12-07 10:38 ?861次閱讀
    <b class='flag-5'>六種</b>主流物聯(lián)網(wǎng)無線技術盤點:一文治愈你的無線選擇困難癥!

    redis數(shù)據(jù)會自動清除嗎

    Redis數(shù)據(jù)不會自動清除,但它提供了一些機制來管理數(shù)據(jù)的過期和淘汰。在默認情況下,Redis只會在內(nèi)存中存儲數(shù)據(jù),并且沒有自動清除機制。 Redis數(shù)據(jù)持久化和過期: RDB持久化:
    的頭像 發(fā)表于 12-05 10:13 ?2219次閱讀

    redis容器內(nèi)怎么查看redis日志

    redis是一款流行的開源內(nèi)存數(shù)據(jù)庫,常用于緩存、消息隊列、任務管理等場景。在使用redis時,了解如何查看redis日志對于排查問題、監(jiān)控性能和分析應用程序行為非常重要。在本文中,我們將介紹在
    的頭像 發(fā)表于 12-05 10:10 ?3400次閱讀

    redis的lru原理

    Redis是一基于內(nèi)存的鍵值數(shù)據(jù)庫,它使用了LRU(Least Recently Used)算法來進行緩存的數(shù)據(jù)淘汰。LRU算法的核心思想是最近最少使用的數(shù)據(jù)將會在未來也不常用,因此應該優(yōu)先
    的頭像 發(fā)表于 12-05 09:56 ?592次閱讀

    redis的原理和使用場景

    、消息隊列、實時分析、排行榜和計數(shù)器等場景。本文將詳細介紹Redis的原理和使用場景。 一、Redis的原理 Redis的原理主要包括以下幾個方面: 內(nèi)存數(shù)據(jù)庫:Redis是一
    的頭像 發(fā)表于 12-04 16:29 ?553次閱讀

    redis hash底層實現(xiàn)原理

    Redis是一個開源的內(nèi)存數(shù)據(jù)庫,使用鍵值對存儲數(shù)據(jù)。其中,Redis中的數(shù)據(jù)結構之一就是哈希(Hash),它提供了一將多個字段(Field)存儲在一個鍵(Key)中的方法。那么Redis
    的頭像 發(fā)表于 12-04 16:27 ?544次閱讀

    redis淘汰策略

    Redis是一基于內(nèi)存的鍵值存儲系統(tǒng),為了充分利用內(nèi)存,Redis采用了一些淘汰策略來管理內(nèi)存空間。
    的頭像 發(fā)表于 12-04 16:23 ?515次閱讀

    redis持久化方式的區(qū)別

    的完整性和一致性。 Redis提供了兩持久化方式:RDB(Redis Database)和AOF(Append Only File)。這兩方式各有優(yōu)劣,下面我們將詳細介紹它們的區(qū)別
    的頭像 發(fā)表于 12-04 11:12 ?484次閱讀

    Java redis鎖怎么實現(xiàn)

    在Java中實現(xiàn)Redis鎖涉及到以下幾個方面:Redis的安裝配置、Redis連接池的使用、Redis數(shù)據(jù)結構的選擇、實現(xiàn)分布式鎖的幾種方式等。 一、
    的頭像 發(fā)表于 12-04 10:47 ?1091次閱讀

    redis分布式鎖死鎖處理方案

    引言: 隨著分布式系統(tǒng)的廣泛應用,尤其是在大規(guī)模并發(fā)操作下,對并發(fā)控制的需求越來越高。Redis分布式鎖作為一常見的分布式鎖實現(xiàn)方案,由于其高性能和可靠性備受青睞。然而,在多線程或多進程的復雜系統(tǒng)
    的頭像 發(fā)表于 11-16 11:44 ?1664次閱讀