app开发直播功能实践案例 系统讲解
图 18 是消息优化的四个流程。
第一是消息注册。在进入直播间时,会针对消息类型将消息注册到消息分发管理类中,消息分发管理类内部持有 NSHashTable,弱引用注册消息的对象。
第二是发送消息。各业务模块单独调用消息管理类的发送接口,消息管理类内部调用持有的实例进行消息发送,去除了直播间 VC 这个中介者。
第三是消息处理。消息管理类收到消息回调后,调用消息分发管理,然后根据第一步的消息注册,进行消息的分发(一对多),评论列表相关的消息需要进入消息池,消息按需回调。
第四是评论列表刷新。最开始都是收到消息后立即刷新视图,在高并发下,这样做会导致刷新过于频繁,严重时会占用一半的 CPU 资源,使得直播间非常卡顿;优化之后的做法是,定时轮询消息池内部的消息,存在消息时才将消息从消息池取出,做相应的业务处理后再进行视图刷新。
对消息进行这样四个流程的设计,是比较清晰合理的,既减少了直播间 VC 的耦合性,同时也提升了消息的性能。
3)动画
图 19
性能优化方面,动画也是很大的一块。如图 19 所示,动画控件的可复用性,离屏渲染严重,序列帧图片缓存都是这里所面临的问题。
对于点赞(弹幕),主要是会限制其点赞(弹幕)频次上线。20次/s 便可以达到渲染直播间气氛的行为,直播间 100 个用户每个人点一下就收到 100 个,而如果同时显示 100 个,肯定会造成直播间主播端卡顿,因此,限制最高频次就能避免这种现象的发生。
离屏渲染,可以去除大量圆角(比如直播间列表的一些可复用性圆角),都用图片代替,因为离屏渲染是非常影响 CPU 性能的,会造成很明显的列表卡顿或者直播间卡顿。
对于序列帧,复用程度高的小图片可以进行缓存,但是对于一些礼物大动画,图片比较大,长时间在直播间播放会一直占用内存,所以在使用完之后应该立马释放。
4)打点
图 20
图 20 是最初使用的打点流程,会将这些主流程的打点都附加到磁盘,从磁盘取出之后再发送数据上报给服务器,这样做会使磁盘和网络 IO 操作非常频繁。
图 21
针对这一点,做了如图 21 的流程优化。在进行打点时,会优先将其存入内存当中,在异常情况下才会从内存中将打点数据存储到磁盘,然后定时去做一个打点数据发送的检测,当数据达到阙值时再发送出去,这样一来减少了网络和磁盘的 IO 操作。
图 22
图 22 是性能打点优化的结果。原来每秒打点 50 次,需要占用 70% 的 CPU 资源,优化以后只需要占用 35% 的 CPU 资源。
3.直播组件化
图 23
图 23 是直播组件化的一些功能模块,其中包含房间管理、消息通道、红包、礼物、评论等功能模块。
组件化主要是为了解决直播间代码耦合性高,对外提供可定制化功能模块,自定义 UI 的功能。在选择总体的设计方案的时候,按照需求进行了整体设计模式的选择:
1)需要明确的接口定义和面向接口编程,并且可以重写具体的实现达到自定义UI和功能的需求;
2)低耦合,可定制化功能模块。
基于以上两个要求,选择了 MVP 的设计模式,MVP 可以很好的解耦直播间的各模块代码,同时有良好的接口层,具体的 View 和 Presenter 实现各自的 Interface 层的逻辑,替换 View 和 Presenter 的实现就能达到可定制化UI的需求。然后直播间对各模块 Presenter 的接口层的组合调用,也能够很好的支持功能模块的和定制化需求。相较于比较厚重的 MVC 模式和数据双向绑定的 MVVM,MVP 更适合蘑菇街的业务场景。
图 24
图 24 是一个主播信息展示组件,MVP 的组件化工作给之后的 SDK 化和平台化带来了极大的便利。对于直播回放的接入,则只需在回放的直播间组装业务组件就可以完成,操作上带来了很大的便利。
4.SDK化
SDK 化主要目的有四点:
1.降低集团内其他 App 的接入成本;
2.统一的接口和文档;
3.良好的框架设计和扩展性;
4.业务功能可配置化和 UI 定制化;
图 25
上一篇 爱奇艺徐伟峰:直播的未来在哪里?
热点新闻推荐
蔡萝莉直播人气碾压Angelababy,娱乐圈人气不行了?
斗鱼吃鸡一哥小叮当怎么不直播了?
美国主播玩《堡垒之夜》月入50万美元!
全民微博致歉昨日全民吃鸡贺岁杯卡顿问题!
绝地求生:全民线下赛再成笑话!卡成PPT!
糯米回归人气高达百万,争议却从未停止!
斗鱼嘉年华将至,新老人气主播齐登场!
陈一发儿直播李宗盛专场,速来围观~
栏目最新信息
-
[摘要] 有人说,这世界的审美,就是一场巨大的轮回。这话不假。在刚刚过去的2023年,因为一场《新龙门客栈》,曾经盛行大江南北的越剧再次成为市场焦点。连带其中的两位主演李丽君和李云霄,流量甚至不输一线明星。对这...
-
[摘要] 由澳门经济及科技发展局支持,澳门直播协会、淘宝教育和南光物流有限公司共同打造的2023《淘宝|澳门直播电商好物节》启动仪式将于12月18日在澳门青年创业孵化中心举行。本次活动将集合全品类澳门商户,在淘宝、天...
-
[摘要] 2023年广州市“湾区音乐汇”——广州南沙先锋音乐节,作为湾区音乐汇系列活动之一,秉持“国际视角、湾区特色、专业平台、多元融合”的活动理念,按照“政府统筹协调、市场主导运营”的组织模式,广州南沙先锋音乐节...
-
[摘要] 2023年10月16日-10月17日,2023温州市第二届新电商文化节暨温州第二届短视频直播电商大赛在美丽的百岛洞头隆重举行。本次活动由浙江省商务厅、温州市人民政府指导,由温州市商务局、洞头区人民政府主办,洞...
-
[摘要] offer3自打开播以来就保持着优秀的热度,成为大家的下饭综艺,这不,新的一集如约而至。从第三集中,我们可以看到,每一集的邀约品牌数量都是灵活的,时长也并非固定不变。这次虽然只有4个品牌,然而却云集了美容仪器觅...
-
[摘要] 近日,严一集团在ICC环球智汇中心举行了简朴庄重的总部落址庆祝仪式。严一集团董事长、总经理、常务副总、财务总经理等出席仪式,严一集团生产基地全体员工通过直播共同见证这一历史时刻。 据悉...
-
[摘要] 尽管AI数字人已经在电商直播中频频亮相,观感体验和带货成绩也在逐步提升,但头部主播群体还对此保持着谨慎观望的态度。就在这个时候,“隐身”长达500多天的“直播一姐”薇娅全面进军数字直播的消息引起...
-
[摘要] 直播带货作为电商主赛道的热度一直不减,也越来越拥挤,连快递大佬也下场一搏了。从最初一只手数得过来的超级主播爆火,到如今千军万马做直播,这是什么情况?快递也直播,顺丰入局直播带货日前...
-
[摘要] 据悉,由浙江起点影视文化有限公司、合肥中视万象文化传媒有限责任公司、合肥大有影业有限公司、西安曲江出版传媒股份有限公司出品,浙江星光电影院线有限公司发行的热血机甲动画电影《神兽魔王大作战》将于8月4日在全...
-
[摘要] 据悉,由浙江起点影视文化有限公司、合肥中视万象文化传媒有限责任公司、合肥大有影业有限公司、西安曲江出版传媒股份有限公司出品,浙江星光电影院线有限公司发行的热血冒险题材动画电影《神兽魔王大作战》将于8月4日...
热门TOP排行
最新主播大全
- 酷狗直播征戰公会
- 酷狗繁星仙剑公会主播
- 酷狗繁星仙剑公会主播
- 旭旭宝宝直播地址,旭旭宝宝个人资料及简介
- 陈一发儿直播间地址 陈一发是谁?
- 张大仙个人资料介绍,张大仙在哪直播
- 冯提莫直播间 冯提莫个人资料介绍
- IS语音主播雨蒙蒙参与直播答题 瓜分10万奖金
- 李小冉因李小璐绯闻躺枪,惨遭网友攻击
- IS语音主播小优雅18岁照片简直秒杀朋友圈
- 我叫橹管飞个人资料、真名
- yy女主播赵文静个人资料
- 慕诗琪直播间地址 慕诗琪微博地址
- 斗鱼张琪格直播间地址 张琪格微博
- dg女团丶闪现君微博地址 闪现君直播间地址
- lgd平野绫直播间地址 lgd平野绫微博
- lol针针直播间地址 lol针针微博地址
- No总直播间地址 钱赞企no总微博地址
- 主播pigff直播间地址
- 斗鱼大司马直播间 斗鱼大司马什么档位?