天天看點

線上教你開發直播軟體app時需要掌握的小知識

在開發直播軟體app時,我們經常會提到伺服器的使用。假如一台伺服器的性能達到極限的話,我們該怎麼辦呢?這個時候,我們可以使用伺服器叢集來提高整體性能,但是在這個叢集中就需要其中一台伺服器充當“排程者”。也就是使用者的所有請求先由它接收,然後再根據每台伺服器的負載情況将請求配置設定給某一台後端伺服器去處理。在這個過程中,如何進行合理配置設定,如何保證後端伺服器充分發揮性能,如何保持伺服器叢集整體性能。這就是負載均衡的問題了,本文主要分享HTTP重定向實作負載均衡的相關内容。

線上教你開發直播軟體app時需要掌握的小知識

  1. 過程簡介

    使用者向伺服器發起請求時,這一請求會優先被“排程者”截獲,然後再根據某種配置設定政策選擇一台伺服器,将選中的伺服器IP位址封裝在HTTP響應消息頭部的location字段中,然後将響應消息的狀态碼設定為302,最終将消息傳回給浏覽器。當浏覽器收到響應消息後,解析字段并且向該URL發起請求,指定的伺服器會處理該使用者的請求,然後将結果傳回給使用者。

  2. 優點和缺點

    采用HTTP重定向實作伺服器叢集的負載均衡實作雖然看起來邏輯簡單,但是缺點也十分明顯。在HTTP重定向的方法中,排程伺服器隻在用戶端第一次發起請求的時候起作用。當“排程者”伺服器向其傳回響應消息之後,用戶端此後的操作都是基于新的URL所進行的,是以就會出現一些問題。

(1)由于使用者不同的通路時間,每個使用者對各自的後端伺服器所造成的壓力也不同。那麼排程伺服器在進行排程時,就無從得知目前使用者會對伺服器造成多少壓力。是以無法真正實作負載均衡,隻不過是将請求次數平均配置設定到每台伺服器而已。

線上教你開發直播軟體app時需要掌握的小知識

(2)如果配置設定到使用者的後端伺服器出現了故障,那麼當使用者再次通路時,請求就會發送給出現故障的伺服器,進而導緻通路失敗。

其實負載均衡一共有四種實作方式,HTTP重定向隻不過是其中一種。但不可否認的是,在開發直播app軟體的過程中,了解負載均衡相關的知識是非常必要的。畢竟直播作為實時互動性極強的應用場景,經常會出現高并發的現象。如果出現了高并發現象,那麼我們就可以從伺服器方面入手,比如實作負載均衡,進而保證直播的穩定運作。

本文聲明原創,轉載請注明出處。

繼續閱讀