国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

阿里云Redis混合存儲典型場景:如何輕松搭建視頻直播間系統

zhou_you / 3601人閱讀

摘要:摘要本文主要介紹視頻直播間系統,以及如何使用阿里云混合存儲實例方便快捷的構建大數據量,低延遲的視頻直播間服務。開播啦加油請假抱歉,今天有事鴿一天阿里云優勢阿里云主從版提供萬的,讀寫分離版本提供萬最大力度支持系統的高并發需求。

摘要: 本文主要介紹視頻直播間系統,以及如何使用阿里云Redis混合存儲實例方便快捷的構建大數據量,低延遲的視頻直播間服務。

背景

視頻直播間作為直播系統對外的表現形式,在整個系統中處于核心地位。通常除了視頻直播窗口外,直播間還包含在線用戶,禮物,評論,點贊,排行榜等信息。直播間消息,時效性高,互動性強,對系統時延有著非常高的要求,非常適合使用Redis等緩存服務來處理。

直播信息

實時排行信息

實時排行信息包含直播間在線用戶列表,各種禮物排行榜,彈幕消息(可以理解為按消息維度的消息排行榜)等信息,適合使用Redis中的SortedSet結構進行存儲。

例如,以unix timestamp+毫秒數為分值,記錄user55的直播間增加的5條彈幕

redis> ZADD user55:_danmu 1523959031601166 message111111111111
(integer) 1
11.160.24.14:3003> ZADD user55:_danmu 1523959031601266 message222222222222
(integer) 1
11.160.24.14:3003> ZADD user55:_danmu 1523959088894232 message33333
(integer) 1
11.160.24.14:3003> ZADD user55:_danmu 1523959090390160 message444444
(integer) 1
11.160.24.14:3003> ZADD user55:_danmu 1523959092951218 message5555
(integer) 1

返回最新的3條彈幕信息:

redis> ZREVRANGEBYSCORE user55:_danmu +inf -inf LIMIT 0 3
1) "message5555"
2) "message444444"
3) "message33333"

返回指定時間段內的3條彈幕信息:

redis> ZREVRANGEBYSCORE user55:_danmu 1523959088894232 -inf LIMIT 0 3
1) "message33333"
2) "message222222222222"
3) "message111111111111"

計數類信息

計數類信息以用戶維度為例,有未讀消息數,關注數,粉絲數,經驗值等等。這類消息適合以Redis中的Hash結構進行存儲。

redis> HSET user:55 follower 5
(integer) 1
redis> HINCRBY user:55 follower 1 //關注數+1
(integer) 6 
redis> HGETALL user:55
1) "follow"
2) "6"

時間線信息

時間線信息是以時間為維度的信息列表,典型的比如主播動態,新帖。這類信息排序方式是固定的時間順序,可以考慮使用List或者SortedSet來存儲。

redis> LPUSH user:55_recent_activitiy  "{datetime:201804112010,type:publish,title:開播啦,content:加油}"
(integer) 1
redis> LPUSH user:55_recent_activitiy "{datetime:201804131910,type:publish,title:請假,content:抱歉,今天有事鴿一天}"
(integer) 2
redis> LRANGE user:55_recent_activitiy 0 10
1) "{datetime:201804131910,type:publish,title:xe8xafxb7xe5x81x87",content:xe6x8axb1xe6xadx89xefxbcx8cxe4xbbx8axe5xa4xa9xe6x9cx89xe4xbax8bxe9xb8xbdxe4xb8x80xe5xa4xa9}"
2) "{datetime:201804112010,type:publish,title:xe5xbcx80xe6x92xadxe5x95xa6,content:xe5x8axa0xe6xb2xb9}"

阿里云Redis優勢

阿里云主從版Redis提供10萬的QPS,讀寫分離版本Redis提供60萬QPS最大力度支持系統的高并發需求。

資深專家團隊深度開發維護Redis源碼,經千萬服務考驗,超高穩定性和安全性。

雙機熱備架構,故障秒級自動遷移,全力保障訂單數據。

一鍵創建,一鍵擴容,全方位智能監控運維平臺。請求量,活躍度一眼就能看清。

專業服務團隊,實時監控可用性,7 x 24小時在線咨詢。

使用Redis混合存儲實例存儲信息

阿里云Redis混合存儲產品完全兼容Redis協議,用戶無需修改任何代碼,以低成本的NVMe盤存儲不常訪問的直播間數據,可以突破內存容量限制,單實例最高可支持TB級別的數據容量。

當Redis混合存儲實例內存可以存儲所有直播間數據時,訪問所有直播間數據均可享受極致性能。

當直播間數據越來越多,快要超過實例內存限制時,Redis混合存儲實例會自動從訪問頻率,訪問時間等維度選擇冷門的直播間數據,后臺將其Value存儲到磁盤上;

熱門直播間數據仍然保留在內存中,性能不受任何影響;

當訪問到磁盤上的冷門直播間數據時,數據會自動從后臺加載到內存中,所有IO操作都經過阿里云自研的新一代存儲引擎Fusion Engine極致優化,4K數據加載速度在20us左右;

通過將部分冷數據存儲到磁盤的方式,有效降低了用戶成本并突破內存對單實例容量的限制。

原文鏈接

閱讀更多干貨好文,請關注掃描以下二維碼:

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/17728.html

相關文章

  • 面試中關于Redis的問題看這篇就夠了

    摘要:所以查閱官方文檔以及他人造好的輪子,總結了一些面試和學習中你必須掌握的問題。在微博應用中,可以將一個用戶所有的關注人存在一個集合中,將其所有粉絲存在一個集合。 昨天寫了一篇自己搭建redis集群并在自己項目中使用的文章,今天早上看別人寫的面經發現redis在面試中還是比較常問的(筆主主Java方向)。所以查閱官方文檔以及他人造好的輪子,總結了一些redis面試和學習中你必須掌握的問題。...

    yanbingyun1990 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<