国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Redis 存儲機制

2019-11-08 20:38:49
字體:
來源:轉載
供稿:網友
Redis存儲機制分成兩種Snapshot和AOF。無論是那種機制,Redis都是將數據存儲在內存中。

Snapshot工作原理: 是將數據先存儲在內存,然后當數據累計達到某些設定的伐值的時候,就會觸發一次DUMP操作,將變化的數據一次性寫入數據文件(RDB文件)。

AOF 工作原理: 是將數據也是先存在內存,但是在存儲的時候會使用調用fsync來完成對本次寫操作的日志記錄,這個日志揭露文件其實是一個基于Redis網絡交互協議的文本文件。AOF調用fsync也不是說全部都是無阻塞的,在某些系統上可能出現fsync阻塞進程的情況,對于這種情況可以通過配置修改,但默認情況不要修改。AOF最關鍵的配置就是關于調用fsync追加日志文件的平率,有兩種預設頻率,always每次記錄進來都添加,everysecond 每秒添加一次。兩個配置各有所長后面分析。由于是采用日志追加的方式來持久話數據,所以引出了第二個日志的概念:rewrite. 后面介紹它的由來。

存儲模式性能和安全比較:

1.性能

Snapshot方式的性能是要明顯高于AOF方式的,原因有兩點:

采用2進制方式存儲數據,數據文件比較小,加載快速。存儲的時候是按照配置中的save策略來存儲,每次都是聚合很多數據批量存儲,寫入的效率很好,而AOF則一般都是工作在實時存儲或者準實時模式下。相對來說存儲的頻率高,效率卻偏低。

2.數據安全

AOF數據安全性高于Snapshot存儲,原因:

Snapshot存儲是基于累計批量的思想,也就是說在允許的情況下,累計的數據越多那么寫入效率也就越高,但數據的累計是靠時間的積累完成的,那么如果在長時間數據不寫入RDB,但Redis又遇到了崩潰,那么沒有寫入的數據就無法恢復了,但是AOF方式偏偏相反,根據AOF配置的存儲頻率的策略可以做到最少的數據丟失和較高的數據恢復能力。說完了性能和安全,這里不得不提的就是在Redis中的Rewrite的功能,AOF的存儲是按照記錄日志的方式去工作的,那么成千上萬的數據插入必然導致日志文件的擴大,Redis這個時候會根據配置合理觸發Rewrite操作,所謂Rewrite就是將日志文件中的所有數據都重新寫到另外一個新的日志文件中,但是不同的是,對于老日志文件中對于Key的多次操作,只保留最終的值的那次操作記錄到日志文件中,從而縮小日志文件的大小。這里有兩個配置需要注意:auto-aof-rewrite-percentage 100 (當前寫入日志文件的大小占到初始日志文件大小的某個百分比時觸發Rewrite)auto-aof-rewrite-min-size 64mb (本次Rewrite最小的寫入數據良)

兩個條件需要同時滿足。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 开阳县| 乌恰县| 寿阳县| 佳木斯市| 安平县| 乌苏市| 临桂县| 河北区| 宽甸| 中方县| 呼图壁县| 郴州市| 泰顺县| 荥阳市| 永善县| 兰考县| 宾川县| 当涂县| 六盘水市| 宁德市| 屏东县| 德清县| 星子县| 花莲市| 庆城县| 通河县| 资溪县| 敦化市| 蓬溪县| 昭平县| 松滋市| 临江市| 合水县| 五莲县| 绵阳市| 合山市| 南木林县| 孝昌县| 筠连县| 防城港市| 江北区|