Mysql master/slave replication這個(gè)架構(gòu)非常成熟。我們已經(jīng)基于它做了3、4年開發(fā)了。既可以支持高可用性雙機(jī)備份系統(tǒng)的建立,也可以支持通過(guò)讀寫分離提高數(shù)據(jù)庫(kù)寫入和讀出性能。有文章說(shuō)在主服務(wù)器上更新二進(jìn)制日志的額外開銷對(duì)性能有1%的影響,具體數(shù)字怎么得出來(lái)的沒有考證。但我們系統(tǒng)的壓力測(cè)試分別在單一Master和Master-Slave兩種情況下運(yùn)行,沒有看到明顯性能差異。
在實(shí)際運(yùn)營(yíng)的系統(tǒng)上,基于Mysql master/slave的中心數(shù)據(jù)庫(kù)的系統(tǒng)處理每天500萬(wàn)次業(yè)務(wù),可以保證7*24小時(shí)的服務(wù)。無(wú)論是系統(tǒng)在線升級(jí),還是單點(diǎn)宕機(jī)冗余。且master/slave可以迅速的切換。當(dāng)你需要slave作為master時(shí),可以slave Mysql很快的變?yōu)閙aster Mysql。Mysql master/slave replication是基于Mysql BinLog,因此如果使用這個(gè)feature,必須要打開Mysql BinLog。master把更新的內(nèi)容寫到binlog中,并維護(hù)了一個(gè)索引文件來(lái)記錄當(dāng)前binlog更新的位置。
詳細(xì)內(nèi)容請(qǐng)參看Mysql中文網(wǎng)(http://imysql.cn/2006_05_17_mysql_replication_1)。
master-slave構(gòu)架可以有效的提高M(jìn)ysql的讀寫效率,這在我的“構(gòu)建高性能Java服務(wù)器”中有更詳細(xì)的公式證明。
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)
點(diǎn)擊舉報(bào)。