直播源碼開(kāi)發(fā),協(xié)議選擇后結(jié)果就顯而易見(jiàn)了
直播源碼開(kāi)發(fā)在搭建時(shí),很多朋友都遇到過(guò)選擇協(xié)議困難的問(wèn)題,協(xié)議的確定關(guān)系到后續(xù)直播源碼開(kāi)發(fā)的發(fā)展,常見(jiàn)的協(xié)議有UDP和TCP兩種,前者實(shí)時(shí)性強(qiáng)但不適合一對(duì)多場(chǎng)景,后者實(shí)時(shí)性弱但適合一對(duì)多場(chǎng)景,按理說(shuō)兩個(gè)協(xié)議劃分很明顯適用于不同的場(chǎng)景,但直播平臺(tái)發(fā)展的方向不同,協(xié)議選擇的糾結(jié)度也就隨著上升了。
?

一、UDP協(xié)議
1、UDP協(xié)議不需要建立鏈接,不論是數(shù)據(jù)發(fā)送前還是后,都不存在鏈接,不僅幫助直播源碼開(kāi)發(fā)節(jié)省了開(kāi)銷(xiāo)和發(fā)送數(shù)據(jù)的延遲,還大大增加了傳輸?shù)乃俣龋瑢⒂脩艚邮諗?shù)據(jù)的延遲控制在1秒以?xún)?nèi)
2、UDP的實(shí)時(shí)性強(qiáng)是建立在無(wú)緩存機(jī)制上的,不論是什么數(shù)據(jù),通過(guò)UDP協(xié)議傳輸時(shí)都會(huì)直接到達(dá)用戶端,雖然這樣大大增加了直播源碼開(kāi)發(fā)的響應(yīng)速度,但也對(duì)用戶端網(wǎng)絡(luò)提出了新的要求,如果網(wǎng)絡(luò)不好,面對(duì)這樣的直傳,只會(huì)造成更大的延遲
3、UDP協(xié)議不支持一對(duì)多情況,很多場(chǎng)景下平臺(tái)無(wú)法使用這種快速傳輸?shù)姆绞?,只有在一?duì)一或語(yǔ)音聊天室或連麥的時(shí)候,UDP協(xié)議才能更好地發(fā)揮
?

二、TCP協(xié)議
1、大多數(shù)情況下,直播源碼開(kāi)發(fā)都會(huì)選這個(gè)協(xié)議,它具備緩存區(qū),會(huì)儲(chǔ)存或提前提出來(lái)自直播平臺(tái)的數(shù)據(jù),幫助用戶端在觀看時(shí)保持流暢度,不過(guò)也因?yàn)榫彺鎱^(qū)的原因,平臺(tái)的資源消耗變得更大
2、需要建立鏈接才能傳輸數(shù)據(jù),用戶端的請(qǐng)求發(fā)送過(guò)來(lái)后需要等和主服務(wù)器建立好鏈接,才能開(kāi)始互相傳輸數(shù)據(jù),不過(guò)需要注意的是,這個(gè)鏈接是會(huì)受到網(wǎng)絡(luò)波動(dòng)影響的,也就是說(shuō)網(wǎng)速不好時(shí)鏈接可能會(huì)中端,再次鏈接也需要時(shí)間等待
3、TCP協(xié)議提供可靠交付的服務(wù),通過(guò)TCP連接傳送的數(shù)據(jù),無(wú)差錯(cuò)、不丟失,不重復(fù)并且按順序到達(dá)
?

直播源碼開(kāi)發(fā)的選擇性要依據(jù)平臺(tái)的目標(biāo)用戶來(lái)定,有的平臺(tái)就是沖著社交市場(chǎng)去的,自然UDP協(xié)議的特點(diǎn)發(fā)揮較好,如果是普通的直播平臺(tái),建議使用TCP,依靠兼容性?xún)?yōu)勢(shì),可以滿足直播源碼開(kāi)發(fā)較多場(chǎng)景的使用。
聲明:以上內(nèi)容為云豹科技作者本人原創(chuàng),未經(jīng)作者本人同意,禁止轉(zhuǎn)載,否則將追究相關(guān)法律責(zé)任