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

Redis 持久化 RDB 與 AOF的執(zhí)行過(guò)程

 更新時(shí)間:2021年11月03日 16:53:50   作者:文若oO  
本文給大家記錄Redis 持久化RDB 與 AOF的執(zhí)行過(guò)程與配置,通過(guò)內(nèi)部觸發(fā) RDB 場(chǎng)景分析Redis 持久化 RDB的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

前言

Redis 持久化支持兩種方式 RDB 與 AOF,文章記錄兩者的執(zhí)行過(guò)程與配置。

一、RDB

RDB 持久化是把當(dāng)前進(jìn)程數(shù)據(jù)生成快照保存到硬盤(pán)的過(guò)程,觸發(fā) RDB 持久化過(guò)程分為手動(dòng)觸發(fā)和自動(dòng)觸發(fā)。

1. save 命令

會(huì)堵塞當(dāng)前 Redis 服務(wù)器,直到 RDB 結(jié)束為止,對(duì)數(shù)據(jù)量較大或者內(nèi)存較大的實(shí)例,會(huì)堵塞較長(zhǎng)時(shí)間,生產(chǎn)環(huán)境不建議使用。如果手動(dòng)執(zhí)行 save 命令,Redis 會(huì)記錄下方日志。

127.0.0.1:6379> save
OK

* DB saved on disk

2. bgsave 命令

Redis 進(jìn)程執(zhí)行 fork 操作創(chuàng)建子進(jìn)程,RDB 持久化過(guò)程由子進(jìn)程負(fù)責(zé),完成后自動(dòng)結(jié)束。阻塞只發(fā)生在 fork 階段,一般時(shí)間很短。如果手動(dòng)執(zhí)行 bgsave 命令,Redis 會(huì)記錄下方日志。

* Background saving started by pid 90338
* DB saved on disk
* RDB: 0 MB of memory used by copy-on-write
* Background saving terminated with success

bgsave 對(duì) save 堵塞進(jìn)行優(yōu)化,Redis 內(nèi)部涉及 RDB 操作都是由 bgsave 完成。

3. 內(nèi)部觸發(fā) RDB 場(chǎng)景

  • 使用 save 相關(guān)配置,如 save m n 表示 m 秒內(nèi)數(shù)據(jù)集存在 n 次修改時(shí),觸發(fā)一次 RDB;
  • 從節(jié)點(diǎn)執(zhí)行全量復(fù)制操作,主節(jié)點(diǎn)自動(dòng)執(zhí)行 bgsave 生成 RDB 文件發(fā)送給從節(jié)點(diǎn);
  • 執(zhí)行 debug relad 重新加載 Redis 時(shí),也會(huì)觸發(fā)生產(chǎn) RDB;
  • 默認(rèn)情況下,執(zhí)行 shutdown 關(guān)閉 Redis 時(shí),如果沒(méi)有開(kāi)啟 AOF 持久化功能,則會(huì)觸發(fā) RDB。

4. RDB 參數(shù)配置

通過(guò)設(shè)置 dir 可以配置 RDB 保存位置 dbfilename 可以設(shè)置文件名。

config set dir /opt/redis-5.0.12/backup
config set dbfilename myback.rdb

Redis 默認(rèn)采用 LZF 算法對(duì)生成的RDB文件做壓縮處理,壓縮后的文件遠(yuǎn)遠(yuǎn)小于內(nèi)存大小,默認(rèn)開(kāi)啟,可以通過(guò) rdbcompression 參數(shù)配置。

config set rdbcompression{yes|no}

壓縮 RDB 雖然會(huì)消耗 CPU 但是可以大幅度減少文件體積,方便存儲(chǔ)或通過(guò)網(wǎng)絡(luò)發(fā)送給從節(jié)點(diǎn)。

5. RDB 缺點(diǎn)

RDB 方式數(shù)據(jù)沒(méi)辦法做到實(shí)時(shí)持久化/秒級(jí)持久化。因?yàn)?bgsave 每次運(yùn)行都要執(zhí)行 fork 操作創(chuàng)建子進(jìn)程,屬于重量級(jí)操作,頻繁執(zhí)行成本過(guò)高。

RDB文件使用特定二進(jìn)制格式保存,Redis 版本演進(jìn)過(guò)程中有多個(gè)格式的 RDB 版本,存在老版本 Redis 服務(wù)無(wú)法兼容新版 RDB 格式的問(wèn)題。

二、AOF

AOF(appendonlyfile)持久化:以獨(dú)立日志的方式記錄每次寫(xiě)命令,重啟時(shí)再重新執(zhí)行 AOF 文件中的命令達(dá)到恢復(fù)數(shù)據(jù)的目的。AOF 的主要作用是解決了數(shù)據(jù)持久化的實(shí)時(shí)性,目前已經(jīng)是 Redis 持久化的主流方式。

1. 參數(shù)配置

# 配置開(kāi)啟 AOF
config set appendonly yes
# 配置文件名,默認(rèn) appendonly.aof
config set appendfilename xxx.aof
# 存儲(chǔ)位置配置,與 RDB 一樣
config set dir /opt/redis-5.0.12/backup

2. AOF 執(zhí)行流程

請(qǐng)?zhí)砑訄D片描述

  1. 所有的命令都會(huì)追加到 aof_buf(緩沖區(qū))中;
  2. AOF 緩沖區(qū)根據(jù)對(duì)應(yīng)的策略向磁盤(pán)同步操作;
  3. 隨著 AOF 文件越來(lái)越大,需要定期對(duì) AOF 重寫(xiě),達(dá)到壓縮目的;
  4. 當(dāng) Redis 服務(wù)器重啟時(shí),可以加載AOF文件進(jìn)行數(shù)據(jù)恢復(fù)。

3. 重寫(xiě)機(jī)制

手動(dòng)觸發(fā):

bgrewriteaof

自動(dòng)觸發(fā),根據(jù)下方兩個(gè)參數(shù)設(shè)置自動(dòng)觸發(fā)機(jī)制:

auto-aof-rewrite-min-size
auto-aof-rewrite-percentage

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

相關(guān)文章

  • 使用Grafana監(jiān)控Redis的操作方法

    使用Grafana監(jiān)控Redis的操作方法

    這篇文章主要介紹了使用Grafana監(jiān)控Redis,號(hào)稱(chēng)下一代可視化監(jiān)控系統(tǒng),結(jié)合SpringBoot使用,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • Redis中的bitmap詳解

    Redis中的bitmap詳解

    BitMap是通過(guò)一個(gè)bit位來(lái)表示某個(gè)元素對(duì)應(yīng)的值或者狀態(tài),其中的key就是對(duì)應(yīng)元素本身。我們知道8個(gè)bit可以組成一個(gè)Byte,所以bitmap本身會(huì)極大的節(jié)省儲(chǔ)存空間,下面通過(guò)本文給大家介紹Redis中的bitmap知識(shí),感興趣的朋友一起看看吧
    2021-10-10
  • Redis教程(八):事務(wù)詳解

    Redis教程(八):事務(wù)詳解

    這篇文章主要介紹了Redis教程(八):事務(wù)詳解,本文講解了,本文講解了事務(wù)概述、相關(guān)命令列表、命令使用示例、WATCH命令和基于CAS的樂(lè)觀(guān)鎖等內(nèi)容,需要的朋友可以參考下
    2015-04-04
  • 幾分鐘教你掌握Redis簡(jiǎn)單動(dòng)態(tài)字符串SDS

    幾分鐘教你掌握Redis簡(jiǎn)單動(dòng)態(tài)字符串SDS

    這篇文章主要為大家介紹了幾分鐘教你掌握Redis簡(jiǎn)單動(dòng)態(tài)字符串SDS方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • Redis數(shù)據(jù)庫(kù)中實(shí)現(xiàn)分布式鎖的方法

    Redis數(shù)據(jù)庫(kù)中實(shí)現(xiàn)分布式鎖的方法

    這篇文章主要介紹了Redis數(shù)據(jù)庫(kù)中實(shí)現(xiàn)分布式鎖的方法,Redis是一個(gè)高性能的主存式數(shù)據(jù)庫(kù),需要的朋友可以參考下
    2015-06-06
  • Redis數(shù)據(jù)導(dǎo)入導(dǎo)出以及數(shù)據(jù)遷移的4種方法詳解

    Redis數(shù)據(jù)導(dǎo)入導(dǎo)出以及數(shù)據(jù)遷移的4種方法詳解

    這篇文章主要介紹了Redis數(shù)據(jù)導(dǎo)入導(dǎo)出以及數(shù)據(jù)遷移的4種方法詳解,需要的朋友可以參考下
    2020-02-02
  • Redis入門(mén)基礎(chǔ)常用操作命令整理

    Redis入門(mén)基礎(chǔ)常用操作命令整理

    這篇文章主要為大家介紹了Redis入門(mén)基礎(chǔ)常用操作命令的整理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • Redis實(shí)現(xiàn)消息的發(fā)布訂閱原理分析

    Redis實(shí)現(xiàn)消息的發(fā)布訂閱原理分析

    本文主要介紹了Redis實(shí)現(xiàn)消息的發(fā)布訂閱原理分析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Redis的9種數(shù)據(jù)類(lèi)型用法解讀

    Redis的9種數(shù)據(jù)類(lèi)型用法解讀

    這篇文章主要介紹了Redis的9種數(shù)據(jù)類(lèi)型用法及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Redis swap空間(虛擬內(nèi)存)的使用詳解

    Redis swap空間(虛擬內(nèi)存)的使用詳解

    這篇文章主要介紹了Redis swap空間的使用示例,幫助大家更好的理解和學(xué)習(xí)使用Redis數(shù)據(jù)庫(kù),感興趣的朋友可以了解下
    2021-03-03

最新評(píng)論

高雄市| 德令哈市| 鄂温| 通城县| 万荣县| 乐亭县| 工布江达县| 武乡县| 缙云县| 陕西省| 永德县| 闸北区| 克拉玛依市| 平乐县| 凉城县| 枣阳市| 潼关县| 镶黄旗| 望江县| 遂宁市| 栾城县| 调兵山市| 合作市| 昭觉县| 清徐县| 广德县| 开远市| 云阳县| 中山市| 望谟县| 巴南区| 高青县| 莫力| 新龙县| 兴山县| 靖宇县| 清原| 玉溪市| 临江市| 绥江县| 通榆县|