阿里云Redis混合存储典型场景:如何轻松搭建视频直播间系统-阿里云开发者社区

开发者社区> 怀听> 正文

阿里云Redis混合存储典型场景:如何轻松搭建视频直播间系统

简介: 本文主要介绍视频直播间系统,以及如何使用阿里云Redis混合存储实例方便快捷的构建大数据量,低延迟的视频直播间服务。
+关注继续查看

本文主要介绍视频直播间系统,以及如何使用阿里云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:\xe8\xaf\xb7\xe5\x81\x87\",content:\xe6\x8a\xb1\xe6\xad\x89\xef\xbc\x8c\xe4\xbb\x8a\xe5\xa4\xa9\xe6\x9c\x89\xe4\xba\x8b\xe9\xb8\xbd\xe4\xb8\x80\xe5\xa4\xa9}"
2) "{datetime:201804112010,type:publish,title:\xe5\xbc\x80\xe6\x92\xad\xe5\x95\xa6,content:\xe5\x8a\xa0\xe6\xb2\xb9}"

阿里云Redis优势

  • 阿里云主从版Redis提供10万的QPS,读写分离版本Redis提供60万QPS最大力度支持系统的高并发需求。
  • 资深专家团队深度开发维护Redis源码,经千万服务考验,超高稳定性和安全性。
  • 双机热备架构,故障秒级自动迁移,全力保障订单数据。
  • 一键创建,一键扩容,全方位智能监控运维平台。请求量,活跃度一眼就能看清。
  • 专业服务团队,实时监控可用性,7 x 24小时在线咨询。

使用Redis混合存储实例存储信息

阿里云Redis混合存储产品完全兼容Redis协议,用户无需修改任何代码,以低成本的NVMe盘存储不常访问的直播间数据,可以突破内存容量限制,单实例最高可支持TB级别的数据容量。
image

  1. 当Redis混合存储实例内存可以存储所有直播间数据时,访问所有直播间数据均可享受极致性能。
  2. 当直播间数据越来越多,快要超过实例内存限制时,Redis混合存储实例会自动从访问频率,访问时间等维度选择冷门的直播间数据,后台将其Value存储到磁盘上;
  3. 热门直播间数据仍然保留在内存中,性能不受任何影响;
  4. 当访问到磁盘上的冷门直播间数据时,数据会自动从后台加载到内存中,所有IO操作都经过阿里云自研的新一代存储引擎Fusion Engine极致优化,4K数据加载速度在20us左右;
  5. 通过将部分冷数据存储到磁盘的方式,有效降低了用户成本并突破内存对单实例容量的限制。

FYI

Redis混合存储产品与架构介绍
点击以下链接,申请免费试用Redis混合存储实例

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
企业搬站的关键:企业级存储如何助力核心业务系统上云?
2019阿里云峰会上海专场,阿里云高级产品专家彭亚雄带来题为企业搬站之旅,企业存储助力核心业务系统上云的分享。
3189 0
阿里巴巴复杂搜索系统的可靠性优化之路
闲鱼技术-元茂 1. 背景 搜索引擎是电商平台成交链路的核心环节,搜索引擎的高可用直接影响成交效率。闲鱼搜索引擎作为闲鱼关键系统,复杂度和系统体量都非常高,再加上闲鱼所有导购场景都依靠搜索赋能,搜索服务的稳定可靠成为了闲鱼大部分业务场景可用能力的衡量标准;如何保障搜索服务的稳定和高可用成为了极大的挑战。
13379 0
跨地域场景下,如何解决分布式系统的一致性?
跨地域,即常说的“异地双活”、“异地多活”中的异地概念。在业务发展较快的情况下,我们的服务便需要跨地域部署,以满足各区域就近访问和跨地域容灾等需求,在此过程中,不可避免会涉及到跨地域下的分布式一致性问题。由跨地域所带来的网络延迟问题,以及由于网络延迟而衍生的一系列问题,对于设计和构建一个跨地域分布式一致性系统是极大的挑战,业界有很多针对此问题的解决方案,都希望能解决跨地域场景下的一致性问题。
1194 0
云场景实践研究第20期:梨视频
作为中国领先的资讯类短视频生产者,梨视频采用阿里云平台搭建了数据处理系统和梨视频推荐系统,本文从架构和实现的角度介绍梨视频上云的实践经验。
1805 0
201604深圳云栖大会Workshop - 用OSS搭建一个视频直播网站
使用OSS搭建一个完整的视频直播网站,可以创建删除直播频道,并且能够使用直播软件从PC端或者移动端推送视频流,并在PC或者移动端观看直播
4667 0
阿里视频云黄海宇:解析世界杯超大规模直播场景下的码率控制
这一次的世界杯,与以往世界杯最大的区别在于,有很多互联网用户观看直播,而不是在电视上。在互联网观看直播,互联网的网络条件不一样,观众会看不同码率的视频。所以主要分享下阿里云在直播中怎么做码率控制。
7620 0
PostgreSQL 列存, 混合存储, 列存索引, 向量化存储, 混合索引 - OLTP OLAP OLXP HTAP 混合负载应用
PostgreSQL 列存, 混合存储, 列存索引, 向量化存储, 混合索引 - OLTP OLAP OLXP HTAP 混合负载应用
1592 0
大促场景系统稳定性保障实践经验总结
11月11日0点刚过26秒,天猫双11的订单创建峰值就达到58.3万笔/秒,阿里云又一次扛住全球最大规模流量洪峰!58.3万笔/秒,这一数字是2009年第一次天猫双11的1457倍。
7870 0
+关注
怀听
阿里云Redis
11
文章
0
问答
来源圈子
更多
阿里云数据库:帮用户承担一切数据库风险,给您何止是安心!支持关系型数据库:MySQL、SQL Server、PostgreSQL、PPAS(完美兼容Oracle)、自研PB级数据存储的分布式数据库Petadata、自研金融级云数据库OceanBase支持NoSQL数据库:MongoDB、Redis、Memcache更有褚霸、丁奇、德哥、彭立勋、玄惭、叶翔等顶尖数据库专家服务。
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载