為了提公升資料庫的效能,一般會採用讀寫分離,即寫請求去主庫,讀請求去從庫。
支援開啟多個io執行緒,可以提公升效率。
開啟mysql的semi-sync 半同步複製功能,即資料落庫,寫入binlog,並至少同步給一台從庫的relay日誌,才算寫成功。
從庫開啟多個sql執行緒,可以併發讀取relay日誌,運算元據,縮小延遲的時間。
從庫讀binlog日誌,寫relay日誌,運算元據都是序列執行的。所以從庫的資料比主庫晚一些執行,主從複製是有延遲的。
主庫的寫併發達到1000/s時,從延遲幾毫秒;
主庫的寫併發達到2000/s時,從延遲幾十毫秒;
主庫的寫併發達到4000/s以上,從延遲幾秒;
如何解決主從延遲?
1、分主庫,將乙個主庫拆分成多個主庫,放在多個伺服器上,降低併發,那麼主從延遲就可以忽略不計。
2、開啟多個io執行緒,sql執行緒,縮小主從延遲的時間,一旦寫入的併發真的很高,這個也是沒有用的。
3、改**,插入資料之後,不要立即查詢。
4、如果必須先插入,立馬就要查詢,那就強制讀主庫。
redis的主從複製,讀寫分離,主從切換
當資料量變得龐大的時候,讀寫分離還是很有必要的。同時避免乙個redis服務宕機,導致應用宕機的情況,我們啟用sentinel 哨兵 服務,實現主從切換的功能。redis提供了乙個master,多個sl e的服務。準備三個redis服務,依次命名資料夾子master,sl e1,sl e2.這裡為在測...
sqlserver實現讀寫分離,主從複製的具體步驟
讀寫分離概述 讀寫分離從字面意思就可以理解,就是把對資料庫的讀操作和寫操作分離開。讀寫分離在 發展初期可以一定程度上緩解讀寫併發時產生鎖的問題,將讀寫壓力分擔到多台伺服器上,通常用於讀遠大於寫的場景。讀寫分離的基本原理是讓主資料庫處理事務性增 改 刪操作 insert update delete 而...
mysql主從複製
罪過啊,博主最近好久沒有更新部落格了,轉有道雲筆記了,筆記裡還有些乾貨,最近慢慢分享出來吧。博主最近發現有好多想學,但是發現精力有限啊,博主本來是搞個開發的,但是偏偏想把運維,dba的技術全都學了 mysql集群,nginx等等等 但是發現精力有限,所以簡單了解一下,mysql的主從複製,後面還有m...