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

Redis實(shí)現(xiàn)持久化的方式匯總

 更新時(shí)間:2022年10月13日 08:33:02   作者:Lincee  
Redis是一種高級key-value數(shù)據(jù)庫。它跟memcached類似,不過數(shù)據(jù)可以持久化,而且支持的數(shù)據(jù)類型很豐富。今天我們就來看看如何實(shí)現(xiàn)Redis持久化,需要的朋友可以參考下

Redis有3種實(shí)現(xiàn)持久化的方式:AOF日志、RDB快照、混合持久化

Redis寫入AOF日志的過程

Redis執(zhí)行完寫操作命令后,將命令追加到server.aof_buf緩沖區(qū)
通過write()系統(tǒng)調(diào)用,將aof_buf緩沖區(qū)的數(shù)據(jù)寫入到AOF文件
數(shù)據(jù)被拷貝到了內(nèi)核緩沖區(qū)page cache
由內(nèi)核決定何時(shí)將數(shù)據(jù)寫入硬盤

Redis實(shí)現(xiàn)RDB快照

生成 RDB 文件的兩個(gè)命令:save 和 bgsave

執(zhí)行save命令會在主線程生成RDB文件,執(zhí)行bgsave命令會創(chuàng)建一個(gè)子進(jìn)程來生成RDB文件

執(zhí)行bgsave命令時(shí),會通過fork()創(chuàng)建子進(jìn)程,子進(jìn)程和父進(jìn)程共享同一片內(nèi)存數(shù)據(jù)。因?yàn)閯?chuàng)建子進(jìn)程的時(shí)候,子進(jìn)程復(fù)制父進(jìn)程的頁表,但頁表指向的物理內(nèi)存還是一個(gè)。如果主線程執(zhí)行讀操作,則主線程和 bgsave 進(jìn)程互不影響;如果主線程執(zhí)行寫操作,則被修改的數(shù)據(jù)會復(fù)制一份副本,然后 bgsave 子進(jìn)程會把該副本數(shù)據(jù)寫入 RDB 文件,在這個(gè)過程中,主線程仍然可以直接修改原來的數(shù)據(jù)

混合持久化

在AOF日志重寫過程,當(dāng)開啟了混合持久化時(shí),在AOF重寫日志時(shí),fork出來的重寫子進(jìn)程會先將與主線程共享的內(nèi)存數(shù)據(jù)以RDB方式寫到AOF文件,然后主線程處理的操作命令會被記錄在重寫緩沖區(qū),重寫緩沖區(qū)里的增量命令會以AOF方式寫入到AOF文件,寫入完成后通知主進(jìn)程將含有的RDB格式和AOF格式的AOF文件替換舊版。

到此這篇關(guān)于Redis實(shí)現(xiàn)持久化的方式匯總的文章就介紹到這了,更多相關(guān)Redis實(shí)現(xiàn)持久化內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Redis官方ORM框架比RedisTemplate更優(yōu)雅

    Redis官方ORM框架比RedisTemplate更優(yōu)雅

    這篇文章主要為大家介紹了Redis官方ORM框架比RedisTemplate更優(yōu)雅的使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • Redis開啟鍵空間通知實(shí)現(xiàn)超時(shí)通知的步驟詳解

    Redis開啟鍵空間通知實(shí)現(xiàn)超時(shí)通知的步驟詳解

    這篇文章主要介紹了Redis開啟鍵空間通知實(shí)現(xiàn)超時(shí)通知的步驟,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • 關(guān)于Redis未授權(quán)訪問的問題

    關(guān)于Redis未授權(quán)訪問的問題

    這篇文章主要介紹了Redis未授權(quán)訪問的問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-07-07
  • Redis鍵遷移(move、dump、restore、migrate)的三種實(shí)現(xiàn)

    Redis鍵遷移(move、dump、restore、migrate)的三種實(shí)現(xiàn)

    鍵遷移就是把數(shù)據(jù)由一個(gè)Redis遷移到另一個(gè)Redis,本文主要介紹了Redis鍵遷移(move、dump、restore、migrate)的三種實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-04-04
  • 如何使用redis的setnx實(shí)現(xiàn)分布式鎖

    如何使用redis的setnx實(shí)現(xiàn)分布式鎖

    Redis Setnx(SET if Not eXists) 命令在指定的 key 不存在時(shí),為 key 設(shè)置指定的值,這篇文章主要介紹了使用redis的setnx實(shí)現(xiàn)分布式鎖,需要的朋友可以參考下
    2024-06-06
  • Redis基本數(shù)據(jù)類型Set常用操作命令

    Redis基本數(shù)據(jù)類型Set常用操作命令

    這篇文章主要為大家介紹了Redis基本數(shù)據(jù)類型Set常用操作命令,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • 使用redis如何生成自增序列號碼

    使用redis如何生成自增序列號碼

    這篇文章主要介紹了使用redis如何生成自增序列號碼,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • Redis消息隊(duì)列的三種實(shí)現(xiàn)方式

    Redis消息隊(duì)列的三種實(shí)現(xiàn)方式

    本文主要介紹了Redis消息隊(duì)列的三種實(shí)現(xiàn)方式,主要包括List實(shí)現(xiàn)消息隊(duì)列,PubSub消息隊(duì)列,Stream消息隊(duì)列,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-12-12
  • 分布式鎖三種實(shí)現(xiàn)方式及對比

    分布式鎖三種實(shí)現(xiàn)方式及對比

    這篇文章主要介紹了分布式鎖三種實(shí)現(xiàn)方式及對比,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • redis過期監(jiān)聽機(jī)制方式

    redis過期監(jiān)聽機(jī)制方式

    這篇文章主要介紹了redis過期監(jiān)聽機(jī)制方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05

最新評論

彰化县| 平原县| 囊谦县| 洮南市| 桦川县| 常德市| 东源县| 英吉沙县| 台前县| 陆河县| 建瓯市| 观塘区| 高密市| 赤峰市| 仁布县| 新巴尔虎左旗| 奇台县| 灌阳县| 万宁市| 玛多县| 石泉县| 曲阳县| 牡丹江市| 鹤壁市| 双江| 山东省| 抚松县| 化州市| 霍城县| 涿州市| 东阿县| 南岸区| 北辰区| 株洲市| 鹰潭市| 荆州市| 邵阳市| 剑阁县| 桦南县| 府谷县| 北碚区|