redis的主從複製

主從複製:
	場景:
		執行slaveof命令後,複製過程便開始啓動。
		執行laveof no one命令後,終止從節點與主節點複製。

	數據同步方式:
		全量複製:第一次複製時採用全量複製,當數據量較大時,會對主從節點和網絡造成很大的開銷。
		部分複製:主節點補發因網絡閃斷等原因丟失的數據給從節點。
		
	主從延遲:
		概念:主從複製是異步的,故會存在主從延遲的問題,一般延遲時間在1s左右。
		優化:
			repl-disable-tcp-nodelay參數:
			概念:用於控制是否關閉TCP_NODELAY。
				1>當關閉時,主節點產生的命令數據無論大小都會及時地發送給從節點,這樣主從之間延遲會變小,但增加了網絡帶寬的消耗。
					適用於主從之間的網絡環境良好的場景,如同機架或同機房部署。
				
				2>當開啓時,主節點會合並較小的TCP數據包從而節省帶寬。默認發送間隔取決於Linux的內核,一般默認爲40毫秒。這種配置節省了帶寬但增大主從之間的延遲。
					適用於主從網絡環境複雜或帶寬緊張的場景,如跨機房部署。
				
			監控:監聽主從節點的複製偏移量,主從延遲嚴重時報警。
	
	讀寫分離:
		Redis本身的性能非常高,故我們儘量在主節點上做優化(解決慢查詢,合理應用數據結構等),當主節點優化空間不大時再考慮讀寫分離。

		

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章