您好,登錄后才能下訂單哦!
本篇文章為大家展示了MySQL同步延遲如何解決,內(nèi)容簡明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
1:應(yīng)用解決方案
在開發(fā)中,假設(shè)延遲是存在的,對(duì)于核心業(yè)務(wù)必須要嚴(yán)謹(jǐn),比如說文章隊(duì)列,如果獲取不到從庫文章信息,是不是再一次投遞隊(duì)列,或者從主庫查詢,盡量減少延遲帶來的影響,當(dāng)然設(shè)計(jì)的復(fù)雜度就增加了。
如果你重度依賴緩存,那么如何避免緩存信息是臟的,這更難解決。
2:減負(fù)
mysql無法是增刪改查,要保持?jǐn)?shù)據(jù)量可控,我最喜歡在不影響應(yīng)用的前提下刪除數(shù)據(jù),看似很low的解決方案其實(shí)很管用。
盡量減少慢查詢,以前同步延遲都是查詢帶來的,但這次卻不是,而是隊(duì)列大量更新和插入帶來的,比如說每天全量推送用戶,長時(shí)間高并發(fā)寫,同步不可避免,所以一定要控制并發(fā)寫入和更新量。
3:選擇合適的解決方案
mysql盡量作為存儲(chǔ)使用,因?yàn)榇笠?guī)模的查詢和更新并不是它的優(yōu)勢(shì),所以非核心業(yè)務(wù),可以考慮redis和mongodb,尤其是隊(duì)列解決方案,不建議使用mysql,或者說有多套解決方案。
4:拆分
受限于mysql本身機(jī)制,可以通過升級(jí)mysql版本,提升并行復(fù)制能力?;蛘吒鶕?jù)不同的場景,使用多個(gè)庫,甚至多個(gè)mysql實(shí)例,避免核心服務(wù)受影響。
一方面服務(wù)能夠解耦,另外也方便擴(kuò)展。這也是分而治之的解決思路之一。
5:負(fù)載均衡
有的時(shí)候發(fā)現(xiàn)某些從庫不延遲,就一臺(tái)延遲,可以通過策略,摘除這臺(tái)從庫,但必須意識(shí)到,這只是臨時(shí)解決方案,出現(xiàn)大量的延遲,說明問題可能已經(jīng)比較嚴(yán)重了。
上述內(nèi)容就是MySQL同步延遲如何解決,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。