<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                > 由于Redis的數據都存放在內存中,如果沒有配置持久化,redis重啟后數據就全丟失了,于是需要開啟redis的持久化功能,將數據保存到磁 盤上,當redis重啟后,可以從磁盤中恢復數據。redis提供兩種方式進行持久化。 > ### **一、RDB持久化** RDB持久化是在指定的時間間隔內把當前進程數據生成快照保存到硬盤的過程,實際操作過程是fork一個子進程,先將數據集寫入臨時文件,寫入成功后,再替換之前的文件,用二進制壓縮存儲。觸發RDB持久化過程分為手動觸發和自動觸發。 **1、工作流程:** 1)執行bgsave命令,Redis父進程判斷當前是否存在正在執行的子進程,如RDB/AOF子進程,如果存在bgsave命令直接返回。 2)父進程執行fork操作創建子進程,fork操作過程中父進程被阻塞。 3)父進程fork完成后,bgsave命令返回“\* Background saving started by pid xxx”信息,并不再阻塞父進程,可以繼續響應其他命令。 4)父進程創建RDB文件,根據父進程內存生成臨時快照文件,完成后對原有文件進行原子替換。根據lastsave命令可以獲取最近一次生成RDB的時間,對應info Persistence中的rdb\_last\_save\_time。 5)進程發送信號給父進程表示完勝,父進程更新統計信息。 ![](https://img.kancloud.cn/02/0c/020c91bfaef09d710884b4cd1d43cd2c_635x222.png) **2、觸發機制:** 1)手動觸發 ? ?? ?包括save和bgsave命令。因為save會阻塞當前Redis節點,所以,Redis內部所有涉及RDB持久化的的操作都通過bgsave方式,save方式已廢棄。 2)自動觸發 ? ? 1> 使用save的相關配置。 ? ? 2> 從節點執行全量復制操作。 ? ? 3> 執行debug reload命令。 ? ? 4> 執行shutdown命令時,如果沒有開啟AOF持久化功能則會自動執行bgsave。 **3、優缺點** 1)優點 * 相比于AOF機制,如果數據集很大,RDB的啟動效率會更高 * 性能最大化。對于Redis的服務進程而言,在開始持久化時,它唯一需要做的只是fork出子進程,之后再由子進程完成這些持久化的工作,這樣就可以極大的避免服務進程執行IO操作了。 * RDB是一個緊湊壓縮的二進制文件,代表Redis在某個時間點上的數據快照,適合備份,全量復制等場景。 2)缺點 * 沒辦法做到實時持久化/秒級持久化,因為bgsave每次運行都要執行fork操作創建子進程,屬于重量級操作,頻繁執行成本過高 * 系統一旦在定時持久化之前出現宕機現象,此前沒有來得及寫入磁盤的數據都將丟失 **4、常用配置** Redis會將數據集的快照dump到dump.rdb文件中。此外,我們也可以通過配置文件來修改Redis服務器dump快照的頻率,在打開6379.conf文件之后,我們搜索save,可以看到下面的配置信息: ``` save 900 1???????????#在900秒(15分鐘)之后,如果至少有1個key發生變化,則dump內存快照。 save 300 10??????????#在300秒(5分鐘)之后,如果至少有10個key發生變化,則dump內存快照。 save 60 10000??????? #在60秒(1分鐘)之后,如果至少有10000個key發生變化,則dump內存快照。 ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看