短視頻直播系統(tǒng),高并發(fā)情況對短視頻平臺威脅力大嗎
對比起直播平臺來,短視頻直播系統(tǒng)似乎受高并發(fā)的影響并不大,實時是這樣嗎?短視頻平臺雖然不會受到實時性的困擾,但在內(nèi)容讀取速度上依然存在要求,視頻的提前加載和緩存的靈活應用是短視頻直播系統(tǒng)需要解決的問題。盡管高并發(fā)的威脅力不大,但平臺依然需要在這方面進行壓力優(yōu)化。
?

一、架構優(yōu)化
平臺可以采用分布式架構,利用微服務架構拆分服務部署在不同的服務節(jié)點,避免單節(jié)點宕機引起的服務不可用情況。
二、數(shù)據(jù)庫優(yōu)化
采用主從復制,讀寫分離,甚至分庫分表,表數(shù)據(jù)根據(jù)查詢方式的不同采用不同的索引方式,比如tree、hash等,也可以在關鍵字段加索引,sql避免復合函數(shù),避免組合排序等。
三、增加緩存
短視頻直播系統(tǒng)可以使用緩存數(shù)據(jù)庫定義表,結果表等,數(shù)據(jù)庫的中間數(shù)據(jù)放緩存內(nèi),避免多次訪問修改表數(shù)據(jù),像視頻主頁UI、圖標、禮物等不常變的內(nèi)容直接扔緩存里。
?

四、增量統(tǒng)計
不要實時統(tǒng)計大量的數(shù)據(jù),應該采用定時任務統(tǒng)計,增量統(tǒng)計等方式提前進行統(tǒng)計,避免實時統(tǒng)計的內(nèi)存,降低CPU壓力。
五、額外的圖片服務器
面對圖片等大型文件,短視頻直播系統(tǒng)可以單獨準備一個服務器去存儲,避免IO速度對動態(tài)數(shù)據(jù)造成的影響,保證系統(tǒng)不會因為文件而崩潰。
六、負載均衡
使用nginx等對訪問量過大的服務采用負載均衡,實現(xiàn)服務集群,提高服務的最大并發(fā)數(shù),防止短視頻直播系統(tǒng)訪問壓力過大導致單個服務的崩潰。
?

七、使用消息中間件
對服務之間的數(shù)據(jù)傳輸,使用比如rabbit等分布式消息隊列異步傳輸,防止同步傳輸數(shù)據(jù)的阻塞和數(shù)據(jù)丟失。
八、多線程
目前短視頻直播系統(tǒng)使用較多的服務器是多核心處理模式,如果代碼采用單線程,同步處理方式,會出現(xiàn)浪費CPU效率和執(zhí)行時間的問題。
聲明:以上內(nèi)容為云豹科技作者本人原創(chuàng),未經(jīng)作者本人同意,禁止轉載,否則將追究相關法律責任