直播源碼開發(fā),數(shù)據(jù)庫自帶的高可用方案中哪個(gè)好用
直播源碼開發(fā)的成功運(yùn)行離不開數(shù)據(jù)庫的幫助,其中MySQL數(shù)據(jù)庫是直播源碼開發(fā)常用的數(shù)據(jù)庫之一,順帶著平臺(tái)也會(huì)使用它的高可用方案,為什么要使用數(shù)據(jù)庫自帶的高可用架構(gòu)呢,原因如下。
?

一、數(shù)據(jù)庫高可用帶來的好處
1、當(dāng)直播源碼開發(fā)數(shù)據(jù)庫發(fā)生宕機(jī)或者意外中斷時(shí),能夠盡快恢復(fù)數(shù)據(jù)庫的可用性,盡可能的減少停機(jī)時(shí)間,保證業(yè)務(wù)不會(huì)因?yàn)閿?shù)據(jù)庫的故障而終端
2、用作備份、只讀副本等功能的非主節(jié)點(diǎn)數(shù)據(jù)應(yīng)該和主節(jié)點(diǎn)的數(shù)據(jù)保持實(shí)時(shí)或始終保持一致性
3、當(dāng)業(yè)務(wù)發(fā)生數(shù)據(jù)庫切換時(shí),切換前后的數(shù)據(jù)庫內(nèi)容應(yīng)當(dāng)一致,不會(huì)因?yàn)閿?shù)據(jù)缺失或者數(shù)據(jù)不一致而影響業(yè)務(wù)
?

二、具體的高可用方案
1、主從或主主半同步復(fù)制
舒勇雙節(jié)點(diǎn)數(shù)據(jù)庫,搭建單向或雙向的半同步復(fù)制,通常會(huì)和proxy等三方軟件同時(shí)使用,既可以用來監(jiān)控直播源碼開發(fā)數(shù)據(jù)庫的健康,又可以執(zhí)行一系列管理命令,如果主庫發(fā)生故障切換到備庫后仍然可以繼續(xù)使用數(shù)據(jù)庫。
好處在于,架構(gòu)比較簡單,可以使用原生半同步復(fù)制做為數(shù)據(jù)同步的依據(jù);雙節(jié)點(diǎn),沒有主機(jī)宕機(jī)后的選主問題,直接切換即可;雙節(jié)點(diǎn)需求資源少,部署簡單。
缺點(diǎn)在于,完全依賴于半同步復(fù)制,如果半同步復(fù)制退化為異步復(fù)制,數(shù)據(jù)一致性無法得到保障。
?

2、半同步復(fù)制
半同步復(fù)制機(jī)制可靠性很強(qiáng),如果它生效,那么可以認(rèn)為數(shù)據(jù)是一致的,但由于直播源碼開發(fā)可能受到的網(wǎng)路波動(dòng)等客觀原因,導(dǎo)致半同步復(fù)制發(fā)生超時(shí)而切換為異步復(fù)制,那么便不能保證數(shù)據(jù)的一致性。
3、雙通道復(fù)制
當(dāng)半同步復(fù)制發(fā)生超時(shí)后,復(fù)制斷開,當(dāng)再次建立復(fù)制時(shí),同時(shí)建立兩條通道,其中一條半同步復(fù)制通道從當(dāng)前位置開始復(fù)制,保證從機(jī)知道當(dāng)前主機(jī)執(zhí)行的進(jìn)度。
好處在于,雙節(jié)點(diǎn),需求資源少,部署簡單;架構(gòu)簡單,沒有選主問題,直接切換即可,相比于原生復(fù)制,優(yōu)化后的半同步復(fù)制更能保證直播源碼開發(fā)數(shù)據(jù)的一致性。
壞處在于,依舊依賴于半同步復(fù)制。
聲明:以上內(nèi)容為云豹科技作者本人原創(chuàng),未經(jīng)作者本人同意,禁止轉(zhuǎn)載,否則將追究相關(guān)法律責(zé)任