日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
數(shù)據(jù)庫讀寫分離架構(gòu),為什么我不喜歡

RD:單庫數(shù)據(jù)量太大,數(shù)據(jù)庫扛不住了,我要申請一個(gè)數(shù)據(jù)庫從庫,讀寫分離。

創(chuàng)新互聯(lián)公司是一家專注于網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)與策劃設(shè)計(jì),銅陵網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)10余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:銅陵等地區(qū)。銅陵做網(wǎng)站價(jià)格咨詢:028-86922220

DBA:數(shù)據(jù)量多少?

RD:5000w左右。

DBA:讀寫吞吐量呢?

RD:讀QPS約200,寫QPS約30左右。

上周在公司聽到兩個(gè)技術(shù)同學(xué)討論,感覺對讀寫分離解決什么問題沒有弄清楚,有些奔潰。

另,對于互聯(lián)網(wǎng)某些業(yè)務(wù)場景,并不是很喜歡數(shù)據(jù)庫讀寫分離架構(gòu),一些淺見見文末。

一、讀寫分離

什么是數(shù)據(jù)庫讀寫分離?

答:一主多從,讀寫分離,主動(dòng)同步,是一種常見的數(shù)據(jù)庫架構(gòu),一般來說:

  • 主庫,提供數(shù)據(jù)庫寫服務(wù)

  • 從庫,提供數(shù)據(jù)庫讀服務(wù)

  • 主從之間,通過某種機(jī)制同步數(shù)據(jù),例如mysql的binlog

一個(gè)組從同步集群通常稱為一個(gè)“分組”

分組架構(gòu)究竟解決什么問題?

答:大部分互聯(lián)網(wǎng)業(yè)務(wù)讀多寫少,數(shù)據(jù)庫的讀往往***成為性能瓶頸,如果希望:

  • 線性提升數(shù)據(jù)庫讀性能

  • 通過消除讀寫鎖沖突提升數(shù)據(jù)庫寫性能

此時(shí)可以使用分組架構(gòu)。

一句話,分組主要解決“數(shù)據(jù)庫讀性能瓶頸”問題,在數(shù)據(jù)庫扛不住讀的時(shí)候,通常讀寫分離,通過增加從庫線性提升系統(tǒng)讀性能。

二、水平切分

什么是數(shù)據(jù)庫水平切分?

答:水平切分,也是一種常見的數(shù)據(jù)庫架構(gòu),一般來說:

  • 每個(gè)數(shù)據(jù)庫之間沒有數(shù)據(jù)重合,沒有類似binlog同步的關(guān)聯(lián)

  • 所有數(shù)據(jù)并集,組成全部數(shù)據(jù)

  • 會(huì)用算法,來完成數(shù)據(jù)分割,例如“取?!?/p>

一個(gè)水平切分集群中的每一個(gè)數(shù)據(jù)庫,通常稱為一個(gè)“分片”

水平切分架構(gòu)究竟解決什么問題?

答:大部分互聯(lián)網(wǎng)業(yè)務(wù)數(shù)據(jù)量很大,單庫容量容易成為瓶頸,如果希望:

  • 線性降低單庫數(shù)據(jù)容量

  • 線性提升數(shù)據(jù)庫寫性能

此時(shí)可以使用水平切分架構(gòu)。

一句話總結(jié),水平切分主要解決“數(shù)據(jù)庫數(shù)據(jù)量大”問題,在數(shù)據(jù)庫容量扛不住的時(shí)候,通常水平切分。

三、為什么不喜歡讀寫分離

對于互聯(lián)網(wǎng)大數(shù)據(jù)量,高并發(fā)量,高可用要求高,一致性要求高,前端面向用戶的業(yè)務(wù)場景,如果數(shù)據(jù)庫讀寫分離:

  • 數(shù)據(jù)庫連接池需要區(qū)分:讀連接池,寫連接池

  • 如果要保證讀高可用,讀連接池要實(shí)現(xiàn)故障自動(dòng)轉(zhuǎn)移

  • 有潛在的主庫從庫一致性問題

 

  • 如果面臨的是“讀性能瓶頸”問題,增加緩存可能來得更直接,更容易一點(diǎn)

  • 關(guān)于成本,從庫的成本比緩存高不少

  • 對于云上的架構(gòu),以阿里云為例,主庫提供高可用服務(wù),從庫不提供高可用服務(wù)

 

所以,上述業(yè)務(wù)場景下,樓主建議使用緩存架構(gòu)來加強(qiáng)系統(tǒng)讀性能,替代數(shù)據(jù)庫主從分離架構(gòu)。

當(dāng)然,使用緩存架構(gòu)的潛在問題:如果緩存掛了,流量全部壓到數(shù)據(jù)庫上,數(shù)據(jù)庫會(huì)雪崩。不過幸好,云上的緩存一般都提供高可用的服務(wù)。

四、總結(jié)

  • 讀寫分離,解決“數(shù)據(jù)庫讀性能瓶頸”問題

  • 水平切分,解決“數(shù)據(jù)庫數(shù)據(jù)量大”問題

  • 對于互聯(lián)網(wǎng)大數(shù)據(jù)量,高并發(fā)量,高可用要求高,一致性要求高,前端面向用戶的業(yè)務(wù)場景,微服務(wù)緩存架構(gòu),可能比數(shù)據(jù)庫讀寫分離架構(gòu)更合適


分享題目:數(shù)據(jù)庫讀寫分離架構(gòu),為什么我不喜歡
轉(zhuǎn)載來源:http://www.dlmjj.cn/article/dheoosi.html