短視頻開發(fā),如何利用緩存應(yīng)對“三高”問題
高并發(fā)、高性能、高可用是短視頻開發(fā)無法避免的“三高”問題,在實際開發(fā)時我們可以采取多種技術(shù)手段解決“三高”問題,引入緩存便是其一。在短視頻開發(fā)中是如何利用緩存應(yīng)對“三高”問題的呢?

一、引入緩存的原因
所謂的緩存其實就是存儲數(shù)據(jù)的一個硬件或軟件組件,在短視頻開發(fā)引入緩存后可以將系統(tǒng)中的熱點數(shù)據(jù)存儲其中,當(dāng)前端發(fā)來熱點數(shù)據(jù)的訪問請求,緩存便找出相關(guān)數(shù)據(jù)返回至前端,由于省去了查詢數(shù)據(jù)庫的過程,所以訪問效率可實現(xiàn)大幅度地提升。
二、緩存的分類
1、本地緩存
在短視頻開發(fā)的一些簡單場景中,就能考慮使用本地緩存,主要是本地緩存利用的是進程誒成員變量或靜態(tài)變量,不需要考慮清空策略、過期時間、緩存一致性等問題,實現(xiàn)起來更方便。
2、分布式緩存
在短視頻開發(fā)的相對復(fù)雜的場景中,或數(shù)據(jù)量比較大的場景中,則需要考慮使用分布式緩存了。所謂的分布式緩存其實就是對緩存服務(wù)做了水平擴展,將數(shù)據(jù)分片后分散存儲在了不同機器中,這樣能夠降低單個機器的處理壓力,提升系統(tǒng)的響應(yīng)效率。

三、緩存的正確使用
1、適用場景:
(1)讀多寫少
由于緩存在短視頻開發(fā)中主要用于存儲熱點數(shù)據(jù),響應(yīng)用戶對某些數(shù)據(jù)的讀請求,所以比較適用于讀多寫少的場景。
(2)計算耗時大,且實時性不高
在短視頻開發(fā)中存在一些計算比較耗時的功能,像排行榜單之類的,但排行榜單中的周榜、月榜等實時性要求又不是很高,一般更新頻率在一周、一個月左右,像這種就能在數(shù)據(jù)計算完后存儲到緩存中,如果有對應(yīng)的請求直接從緩存中獲取即可,減輕了計算壓力。
3、不適用場景:
(1)寫多讀少的場景
(2)數(shù)據(jù)更新過于頻繁的場景。
(3)對數(shù)據(jù)一致性要求比較高的場景。
(4)數(shù)據(jù)訪問毫無規(guī)律的場景,該場景的緩存命中率會很低。

為了解決短視頻開發(fā)中的“三高”問題,我們對緩存還需要建立更深切的認知,只有充分了解緩存可以帶來的好處和可能引發(fā)的問題,才能讓緩存在短視頻開發(fā)中發(fā)揮出應(yīng)有的價值。
聲明:本文由云豹科技原創(chuàng),轉(zhuǎn)載請注明作者名及原文鏈接,否則視為侵權(quán)