最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Redis中不同持久化方式的差異對(duì)比

 更新時(shí)間:2024年03月27日 09:44:59   作者:ayzen1988  
大家應(yīng)該都知道,Redis持久化方式主要有兩種:RDB(Redis DataBase)和AOF(Append-only file),但是他們各自存儲(chǔ)了什么內(nèi)容?有什么差異呢?今天我來給大家做個(gè)小試驗(yàn),需要的朋友可以參考下

前言

大家應(yīng)該都知道,Redis持久化方式主要有兩種:RDB(Redis DataBase)和AOF(Append-only file)。

但是他們各自存儲(chǔ)了什么內(nèi)容?有什么差異呢?今天我來給大家做個(gè)小試驗(yàn)。

前期準(zhǔn)備,需要安裝好docker、docker-compose的運(yùn)行環(huán)境。

一、安裝Redis

1、創(chuàng)建相關(guān)目錄,執(zhí)行如下命令。

mkdir -p /docker/redis/{data,log}
cd /docker/redis

2、編寫yaml文件,內(nèi)容如下;version替換成自己的docker-compose版本。

vim docker-compose.yaml
version: '2.2.2'
services:
  redis:
    image: redis
    container_name: redis
    user: redis
    restart: always
    command: ["redis-server", "/usr/local/etc/redis/redis.conf"]
    ports:
      - "6379:6379"
    volumes:
      - ./data:/data
      - ./log:/var/log/redis
      - ./redis.conf:/usr/local/etc/redis/redis.conf
    networks:
      - mynet
 
networks:
  mynet:
    name: mynet
    driver: bridge

3、編寫配置文件,內(nèi)容如下。

vim redis.conf
# 綁定的IP地址,若想監(jiān)聽所有網(wǎng)卡則可以注釋掉(默認(rèn)只監(jiān)聽本地環(huán)回接口)
# bind 127.0.0.1
 
# Redis服務(wù)器運(yùn)行的TCP端口
port 6379
 
# 是否以守護(hù)進(jìn)程模式運(yùn)行
daemonize no
 
# PID文件位置
pidfile /var/run/redis-server.pid
 
# 日志文件位置
logfile "/var/log/redis/redis-server.log"
 
# 數(shù)據(jù)庫(kù)的數(shù)量,默認(rèn)是16個(gè)
databases 16
 
# 持久化選項(xiàng)
# RDB快照配置
save 1 1
save 900 1
save 300 10
save 60 10000
 
# AOF持久化開關(guān)
appendonly no
 
# AOF重寫條件
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
 
# 日志級(jí)別
loglevel notice
 
# TCP連接超時(shí)時(shí)間(秒)
timeout 0
 
# 客戶端閑置多長(zhǎng)時(shí)間后斷開連接(秒)
tcp-keepalive 300

4、啟動(dòng)服務(wù),執(zhí)行如下命令。

docker-compose up -d

5、檢查服務(wù)是否正常啟動(dòng),執(zhí)行如下命令。

docker-compose ps -a

正常情況會(huì)返回類似如下內(nèi)容。

6、如果有服務(wù)啟動(dòng)失敗,可以使用如下命令排查問題。

docker logs redis

7、至此,Redis安裝完成并且已正常運(yùn)行。

二、測(cè)試RDB(Redis DataBase)

1、修改配置文件,開啟RDB模式關(guān)閉AOF模式,內(nèi)容如下。

# 持久化選項(xiàng)
# RDB快照配置
 
# 這意味著如果Redis服務(wù)器在900秒(15分鐘)內(nèi)至少有一個(gè)鍵的數(shù)據(jù)發(fā)生變化,它將會(huì)執(zhí)行一次RDB持久化操作。
save 900 1
 
# 這個(gè)設(shè)置指,在300秒(5分鐘)內(nèi)如果有至少10個(gè)不同的鍵發(fā)生了變化,Redis也會(huì)創(chuàng)建一個(gè)新的RDB文件并將其保存到磁盤。
save 300 10
 
# 這個(gè)規(guī)則則表明,即使在很短的時(shí)間窗口內(nèi)(60秒,即1分鐘),只要有10000次(任何數(shù)量的變化都可以視為達(dá)到該閾值,因?yàn)橥ǔG闆r下1分鐘內(nèi)不會(huì)發(fā)生如此大量的變更)鍵的變化,Redis也將執(zhí)行持久化。
save 60 10000
 
# AOF持久化開關(guān)
appendonly no

2、重新啟動(dòng)Redis,執(zhí)行如下命令。

docker-compose down && docker-compose up -d

 3、進(jìn)入Redis客戶端,執(zhí)行如下命令。

docker exec -ti redis redis-cli

4、進(jìn)行一些簡(jiǎn)單的操作,設(shè)置key、刪除key,執(zhí)行類似如下的命令。

set t1 max
set t1 hello-max
set t1 world-max

5、查看RDB文件,執(zhí)行如下命令。

cat data/dump.rdb

返回內(nèi)容如下。

從文件中可以看出來,只記錄了最后一次設(shè)置的key跟value。

6、刪除t1,然后再查看文件內(nèi)容如下。

從文件中已經(jīng)看不到t1的記錄了。

7、至此,RDB模式已測(cè)試完成。

三、測(cè)試AOF(Append-only file)

1、修改配置文件,開啟AOF模式關(guān)閉RDB模式,內(nèi)容如下。

# 持久化選項(xiàng)
# RDB快照配置
# RDB配置全部注釋掉
#save 900 1
#save 300 10
#save 60 10000
 
# AOF持久化開關(guān)
appendonly yes

 2、重新啟動(dòng)Redis,執(zhí)行如下命令。

docker-compose down && docker-compose up -d

3、進(jìn)入Redis客戶端,執(zhí)行如下命令。

docker exec -ti redis redis-cli

4、進(jìn)行一些簡(jiǎn)單的操作,設(shè)置key、刪除key,執(zhí)行類似如下的命令。

set t1 max
set t1 hello-max
set t1 world-max
del t1

5、查看AOF文件,執(zhí)行如下命令。

cat data/appendonly.aof

返回內(nèi)容如下。

從文件中可以看出來,每次的操作都有記錄。

6、至此、AOF模式已測(cè)試完成。

總結(jié)

Redis持久化方式主要有兩種:RDB(Redis DataBase)和AOF(Append-only file)。

1、RDB(Redis DataBase)

  • 保存了某個(gè)時(shí)間點(diǎn)上的數(shù)據(jù)快照,對(duì)于恢復(fù)數(shù)據(jù)來說比較快。
  • 占用空間相對(duì)較小,節(jié)省磁盤空間。

2、AOF(Append-only file)

  • 記錄Redis執(zhí)行的每個(gè)寫命令,保證了每個(gè)寫操作都能被持久化,從而提高了數(shù)據(jù)安全性。
  • 文件是一個(gè)文本文件,易于閱讀和理解,對(duì)于排查問題有幫助。
  • 因?yàn)橛涗浟嗣總€(gè)寫操作,所以AOF文件通常比RDB文件大。

到此這篇關(guān)于Redis中不同持久化方式的差異對(duì)比的文章就介紹到這了,更多相關(guān)Redis持久化方式差異內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Redis實(shí)現(xiàn)分布式鎖全解析之從原理到實(shí)踐過程

    Redis實(shí)現(xiàn)分布式鎖全解析之從原理到實(shí)踐過程

    這篇文章主要介紹了Redis實(shí)現(xiàn)分布式鎖全解析之從原理到實(shí)踐過程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-05-05
  • 徹底弄懂Redis的LRU淘汰策略

    徹底弄懂Redis的LRU淘汰策略

    本文主要介紹了LRU淘汰策略以及實(shí)現(xiàn)一個(gè)LRU算法,文章會(huì)結(jié)合圖解循序漸進(jìn)的講解,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Python交互Redis的實(shí)現(xiàn)

    Python交互Redis的實(shí)現(xiàn)

    本文主要介紹了Python交互Redis的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • 詳解redis-cli?命令

    詳解redis-cli?命令

    這篇文章主要介紹了redis-cli?命令詳解,主要包括命令使用及使用info命令獲取服務(wù)器的信息,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-10-10
  • Redis延遲隊(duì)列和分布式延遲隊(duì)列的簡(jiǎn)答實(shí)現(xiàn)

    Redis延遲隊(duì)列和分布式延遲隊(duì)列的簡(jiǎn)答實(shí)現(xiàn)

    在我們的工作中,很多地方使用延遲隊(duì)列,比如訂單到期沒有付款取消訂單,制訂一個(gè)提醒的任務(wù)等都需要延遲隊(duì)列,那么我們需要實(shí)現(xiàn)延遲隊(duì)列,本文就來介紹一下如何實(shí)現(xiàn),感興趣的可以了解一下
    2021-05-05
  • Redis下載部署并加入idea應(yīng)用的小結(jié)

    Redis下載部署并加入idea應(yīng)用的小結(jié)

    這篇文章主要介紹了Redis下載部署并加入idea應(yīng)用,需要的朋友可以參考下
    2022-10-10
  • Redis分布式緩存與秒殺

    Redis分布式緩存與秒殺

    這篇文章主要介紹了Redis分布式緩存與秒殺,單點(diǎn)Redis的問題,主要有數(shù)據(jù)丟失,并發(fā)能力,故障恢復(fù),存儲(chǔ)能力,想進(jìn)一步了解的同學(xué),可以借鑒本文
    2023-04-04
  • Redis?RESP?協(xié)議實(shí)現(xiàn)實(shí)例詳解

    Redis?RESP?協(xié)議實(shí)現(xiàn)實(shí)例詳解

    這篇文章主要為大家介紹了Redis?RESP?協(xié)議實(shí)現(xiàn)實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • Redis實(shí)現(xiàn)分布式限流的幾種方法

    Redis實(shí)現(xiàn)分布式限流的幾種方法

    Redis實(shí)現(xiàn)分布式限流能有效防止系統(tǒng)過載,,可以防止系統(tǒng)過載并確保公平的資源分配,主要算法包括固定窗口、滑動(dòng)窗口和令牌桶,具有一定的參考價(jià)值,感興趣的可以了解一下
    2026-01-01
  • 基于Redis位圖實(shí)現(xiàn)用戶簽到功能

    基于Redis位圖實(shí)現(xiàn)用戶簽到功能

    這篇文章主要介紹了基于Redis位圖實(shí)現(xiàn)用戶簽到功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-05-05

最新評(píng)論

嵊泗县| 平山县| 个旧市| 富蕴县| 襄樊市| 儋州市| 罗甸县| 梅河口市| 图木舒克市| 咸宁市| 娄底市| 邳州市| 三亚市| 皋兰县| 钟山县| 上高县| 高青县| 通化县| 马尔康县| 叙永县| 贵德县| 自治县| 丽水市| 龙山县| 阿图什市| 吴堡县| 全南县| 建水县| 罗定市| 社会| 永春县| 白玉县| 扶沟县| 延川县| 盖州市| 威海市| 信阳市| 武冈市| 吉木萨尔县| 阜新| 渝北区|