Redis 常見的持久化開發運維問題

2021-09-02 18:00:02 字數 766 閱讀 6450

1.同步操作

記憶體頁的拷貝,本身速度非常快,不會阻塞主線程

2.與記憶體量有關:記憶體越大,耗時越長

3.info:latest_fork_usec #fork  fork的執行時間

4.改善fork

1).有限使用物理機或者高效支援fork操作的虛擬化技術

2).控制redis 例項最大可用記憶體

:maxmemory

3)合理配置linux記憶體分配策略

:vm.overcommit_memory=1

4).降低fork 頻率:例如放寬aof重寫自動觸發時機,不必要的全量複製

1.cpu

開銷:rdb和aof 檔案生成,屬於cpu密集型

優化:不做cpu繫結,不和cpu 密集型部署

2.記憶體

開銷:fork 記憶體開銷,共享父程序快照

優化:避免單機多部署的大量重寫

3.硬碟

開銷:aof 和rdb檔案寫入,可以結合iostat,iotop分析

硬碟優化:

不要和高硬碟負載服務部署在一起:儲存服務,訊息佇列

根據寫入量覺定磁碟型別:例如ssd

單機多例項持久化檔案目錄可以考慮分盤            

主線程負責寫入aof快取區,同步執行緒負責沒秒刷盤操作對比上次aof同步時間。如果大於2s 阻塞,直到同步完成

小於2s,通過。

Redis 開發運維問題 持久化

1.同步操作 記憶體頁的拷貝,本身速度非常快,不會阻塞主線程 2.與記憶體量有關 記憶體越大,耗時越長 3.info latest fork usec fork 所需時間 4.改善fork 1 有限使用物理機 2 控制redis 例項最大可用記憶體 3 linux記憶體分配策略 4 降低fork 頻...

Redis 學習(八) 開發運維的「陷阱」

本篇文章來講一講開發運維中的 陷阱 thpoom killer ntp 同步不同節點的時間 ulimit 單個使用者同時開啟的檔案數 tcp backlog 以持久化檔案作為恢復資料的媒介。rdb 變化 從節點變化 和主節點沒有區別 筆者曾經就被攻擊過,心塞 具體攻擊的細節可以問度娘,這裡不贅述。下...

Redis開發運維實踐問題處理只延遲檢查

mpstat p all 1可以在系統不繁忙或者臨時下線前檢測客戶端和server或者proxy 的頻寬 1 使用 iperf s 命令將 iperf 啟動為 server 模式 iperf s server listening on tcp port 5001 tcp window size 8....