直播平臺(tái)制作,高可用方案下的更細(xì)分支
一、備份
直播平臺(tái)制作想要實(shí)現(xiàn)高可用,備份是必不可少的,備份的優(yōu)點(diǎn)是延遲低、吞吐量高,但缺點(diǎn)是可能出現(xiàn)數(shù)據(jù)丟失,而且面對(duì)直播平臺(tái)制作出現(xiàn)的故障時(shí),切換需要一定的停機(jī)時(shí)間。
不論什么樣的系統(tǒng),定期備份是很有必要的,要知道就算是全部數(shù)據(jù)備份,真正還原的時(shí)候也可能存在數(shù)據(jù)丟失的情況,原因在于:為了節(jié)省空間,直播平臺(tái)制作會(huì)按照一定周期進(jìn)行備份,所以發(fā)生數(shù)據(jù)丟失的情況下,一般會(huì)從最近備份的時(shí)間點(diǎn)恢復(fù),比如平臺(tái)上次備份是三天前,那從備份后三天的內(nèi)容將不會(huì)被還原;備份數(shù)據(jù)也存在兼容問題,不同備份之間,直播平臺(tái)制作數(shù)據(jù)的組織結(jié)構(gòu)會(huì)發(fā)生改變。
?

二、兩階段提交協(xié)議
與備份相比,兩階段提交協(xié)議具有較高的延遲和較低的吞吐量,但是不會(huì)發(fā)生數(shù)據(jù)丟失的情況,可以做到實(shí)時(shí)切換,這種協(xié)議主要基于直播平臺(tái)制作分布式一致性算法,能夠保證多臺(tái)服務(wù)器上的操作或全部成功或全部失敗。
看到這里相信大家也明白了這種協(xié)議的缺點(diǎn),基于分布式結(jié)構(gòu)的特點(diǎn),盡管理論上說各個(gè)節(jié)點(diǎn)之間保持一致,但也只是在一致性、隔離性、持久性上一樣,并不能實(shí)現(xiàn)完全一致,也就是說各個(gè)節(jié)點(diǎn)之間并不知道其他節(jié)點(diǎn)在干什么,這樣直播平臺(tái)制作如果想保持各個(gè)節(jié)點(diǎn)的一致性,就只能讓數(shù)據(jù)操作全部執(zhí)行或全部不執(zhí)行,通常是直播平臺(tái)制作通過建立一個(gè)協(xié)調(diào)者來統(tǒng)一調(diào)度所有分布式節(jié)點(diǎn)執(zhí)行。
?

三、Paxos算法
屬于早期提出的一種基于消息傳遞且具有高度容錯(cuò)性的一致性算法。該算法用于保證一份數(shù)據(jù)中多個(gè)副本之間的數(shù)據(jù)一致性。

通過選舉的方式,利用少數(shù)服從多數(shù)的思想解決這個(gè)問題,根據(jù)節(jié)點(diǎn)數(shù)哪些同意哪些不同意做對(duì)比,一旦決定不會(huì)再改變,這樣直播平臺(tái)搭建不需要與所有服務(wù)器通信,可以只選擇大部分服務(wù)器通信,也不需要所有服務(wù)器都在工作狀態(tài),只需要保證半數(shù)以上的服務(wù)器正常即可。
聲明:以上內(nèi)容為云豹科技作者本人原創(chuàng),未經(jīng)作者本人同意,禁止轉(zhuǎn)載,否則將追究相關(guān)法律責(zé)任