redis持久化時致使系統負載陡增陡降

    最近一段時間在將公司內部的cache層抽離,使用redis來作緩存。將集羣搭建後跑起來發現系統負載出現陡增陡降的現象。而機器的運行的各項指數也較爲正常。後來發現redis配置使用了部分默認配置。 auto-aof-rewrite-percentage 選項爲100%。aof基準大小是486mb。這樣一次持久化就會很長的週期大約2小時。致使負載上升。 前端

    其次有一個重要的選項,如何將aof的數據寫到磁盤上。appendfsync 系統默認爲everysec。目的是爲了在可靠性和性能間取得平衡,而因爲咱們是將redis做爲cache使用,可以允許在redis掛掉時丟掉一部分數據。則將該選項設置爲no,以期待最高的性能。 redis

    未改變前機器負載 緩存

    

    改變後機器負載:
app

    


---------- 性能

後續上了對查詢時間較爲敏感的業務後,發現不斷地rewrite aof 時會在rewrite的瞬間形成查詢時間變長。 spa

因而索性關掉redis的aof自動rewrite功能。將rewrite用定時任務來作。 it

這樣最大的損失也僅僅是redis掛掉後重啓時間久點而已。而redis從集羣搭建到如今尚未出現個掛掉的狀況。 集羣

後來前端的查詢就較爲穩定了。固然不可避免的仍然是在rewrite時的查詢時延。 配置

相關文章
相關標籤/搜索