偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

MySQL同步延遲,是個難題

數據庫 MySQL
在mysql應用中,最讓人揪心的就是同步延遲問題,原因是多方面的,但帶來的負面影響非常大,甚至都無法解釋。

 [[335802]]

本文轉載自微信公眾號「虞大膽的嘰嘰喳喳」,作者虞大膽 。轉載本文請聯系虞大膽的嘰嘰喳喳公眾號。 

在mysql應用中,最讓人揪心的就是同步延遲問題,原因是多方面的,但帶來的負面影響非常大,甚至都無法解釋。

mysql作為最流行的關系型數據庫之一,它的強項可能并不是速度,并行復制能力也并不強,所以如果你要重度依賴mysql,那么必須意識到同步延遲可能是常態(tài)。

那么如何盡量去避免呢?

1:應用解決方案

在開發(fā)中,假設延遲是存在的,對于核心業(yè)務必須要嚴謹,比如說文章隊列,如果獲取不到從庫文章信息,是不是再一次投遞隊列,或者從主庫查詢,盡量減少延遲帶來的影響,當然設計的復雜度就增加了。

如果你重度依賴緩存,那么如何避免緩存信息是臟的,這更難解決。

2:減負

mysql無法是增刪改查,要保持數據量可控,我最喜歡在不影響應用的前提下刪除數據,看似很low的解決方案其實很管用。

盡量減少慢查詢,以前同步延遲都是查詢帶來的,但這次卻不是,而是隊列大量更新和插入帶來的,比如說每天全量推送用戶,長時間高并發(fā)寫,同步不可避免,所以一定要控制并發(fā)寫入和更新量。

3:選擇合適的解決方案

mysql盡量作為存儲使用,因為大規(guī)模的查詢和更新并不是它的優(yōu)勢,所以非核心業(yè)務,可以考慮redis和mongodb,尤其是隊列解決方案,不建議使用mysql,或者說有多套解決方案。

4:拆分

受限于mysql本身機制,可以通過升級mysql版本,提升并行復制能力?;蛘吒鶕煌膱鼍?,使用多個庫,甚至多個mysql實例,避免核心服務受影響。

一方面服務能夠解耦,另外也方便擴展。這也是分而治之的解決思路之一。

5:負載均衡

有的時候發(fā)現某些從庫不延遲,就一臺延遲,可以通過策略,摘除這臺從庫,但必須意識到,這只是臨時解決方案,出現大量的延遲,說明問題可能已經比較嚴重了。

目前規(guī)模還小,如果大了呢?那時候可能是災難性的。

 

責任編輯:武曉燕 來源: 虞大膽的嘰嘰喳喳
相關推薦

2017-06-21 08:30:20

MySQL原因解決辦法

2018-02-01 13:22:50

數據庫MySQL同步延遲

2015-03-30 15:28:42

創(chuàng)業(yè)創(chuàng)業(yè)融資七牛

2017-12-27 13:07:52

數據庫MySQL主從復制

2024-04-30 11:44:24

2019-01-24 09:04:50

Kubernetes存儲容器

2019-08-29 07:04:29

網絡延遲IP網絡

2019-07-16 06:30:19

MySQL同步延遲數據庫

2024-07-15 14:49:38

2018-11-21 08:28:30

Docker業(yè)務容器

2023-12-28 11:18:01

MySQL數據庫級聯從庫

2009-06-12 14:09:36

軟件外包

2011-07-19 10:13:44

IPv6IPv6規(guī)劃

2022-08-18 08:24:19

Mysql數據庫

2016-11-14 14:03:56

2011-07-15 09:27:43

亞馬遜Kindle平板電腦

2019-02-28 14:04:28

內存固定分配存儲

2022-06-13 06:20:42

setStatereact18

2023-09-07 08:15:58

場景同步異步
點贊
收藏

51CTO技術棧公眾號