在線教你開發(fā)直播軟件app時需要掌握的小知識
時間:2022-05-08 19:21:01 | 來源:行業(yè)動態(tài)
時間:2022-05-08 19:21:01 來源:行業(yè)動態(tài)
在開發(fā)直播軟件app時,我們經(jīng)常會提到服務(wù)器的使用。假如一臺服務(wù)器的性能達到極限的話,我們該怎么辦呢?這個時候,我們可以使用服務(wù)器集群來提高整體性能,但是在這個集群中就需要其中一臺服務(wù)器充當(dāng)“調(diào)度者”。也就是用戶的所有請求先由它接收,然后再根據(jù)每臺服務(wù)器的負載情況將請求分配給某一臺后端服務(wù)器去處理。在這個過程中,如何進行合理分配,如何保證后端服務(wù)器充分發(fā)揮性能,如何保持服務(wù)器集群整體性能。這就是負載均衡的問題了,本文主要分享HTTP重定向?qū)崿F(xiàn)負載均衡的相關(guān)內(nèi)容。
1. 過程簡介
用戶向服務(wù)器發(fā)起請求時,這一請求會優(yōu)先被“調(diào)度者”截獲,然后再根據(jù)某種分配策略選擇一臺服務(wù)器,將選中的服務(wù)器IP地址封裝在HTTP響應(yīng)消息頭部的location字段中,然后將響應(yīng)消息的狀態(tài)碼設(shè)置為302,最終將消息返回給瀏覽器。當(dāng)瀏覽器收到響應(yīng)消息后,解析字段并且向該URL發(fā)起請求,指定的服務(wù)器會處理該用戶的請求,然后將結(jié)果返回給用戶。
2. 優(yōu)點和缺點
采用HTTP重定向?qū)崿F(xiàn)服務(wù)器集群的負載均衡實現(xiàn)雖然看起來邏輯簡單,但是缺點也十分明顯。在HTTP重定向的方法中,調(diào)度服務(wù)器只在客戶端第一次發(fā)起請求的時候起作用。當(dāng)“調(diào)度者”服務(wù)器向其返回響應(yīng)消息之后,客戶端此后的操作都是基于新的URL所進行的,所以就會出現(xiàn)一些問題。
(1)由于用戶不同的訪問時間,每個用戶對各自的后端服務(wù)器所造成的壓力也不同。那么調(diào)度服務(wù)器在進行調(diào)度時,就無從得知當(dāng)前用戶會對服務(wù)器造成多少壓力。因此無法真正實現(xiàn)負載均衡,只不過是將請求次數(shù)平均分配到每臺服務(wù)器而已。
(2)如果分配到用戶的后端服務(wù)器出現(xiàn)了故障,那么當(dāng)用戶再次訪問時,請求就會發(fā)送給出現(xiàn)故障的服務(wù)器,從而導(dǎo)致訪問失敗。
其實負載均衡一共有四種實現(xiàn)方式,HTTP重定向只不過是其中一種。但不可否認的是,在開發(fā)直播app軟件的過程中,了解負載均衡相關(guān)的知識是非常必要的。畢竟直播作為實時互動性極強的應(yīng)用場景,經(jīng)常會出現(xiàn)高并發(fā)的現(xiàn)象。如果出現(xiàn)了高并發(fā)現(xiàn)象,那么我們就可以從服務(wù)器方面入手,比如實現(xiàn)負載均衡,從而保證直播的穩(wěn)定運行。
本文聲明原創(chuàng),轉(zhuǎn)載請注明出處。