Weex如何助力200w+同时在线的优酷猫晚直播?

大哥大姐帮我问一下,Weex如何助力200w+同时在线的优酷猫晚直播?
最新回答
写不尽的思念

2026-08-13 16:17:11

Weex通过组件化架构、动态模板渲染、性能优化及灵活降级策略,为200w+同时在线的优酷猫晚直播提供了稳定的技术支撑,具体助力方式如下:

1. 组件化架构支撑复杂功能
  • 模块拆分与复用将直播间拆分为会场框架、播放器、聊天Tab、图文直播Tab、点赞标签等独立模块,通过Weex组件封装原生代码(如将Native播放器封装为Weex Component),实现功能模块的解耦与复用。例如:

    播放器组件:封装优酷原生播放器,支持视频播放核心功能。

    点赞标签:封装动画效果,处理高并发点赞消息的渲染压力。

    自定义Tab:通过WebView组件加载H5页面,实现红包雨、竞猜等互动玩法。

  • 动态会场皮肤基于组件化架构,仅需替换会场皮肤(如UI布局、配色),即可快速适配不同活动需求,无需重构核心逻辑,支撑了猫晚招商期间频繁变更的会场设计。
2. 动态模板与互动玩法支撑
  • 服务端动态下发模板运营通过中台系统编辑互动玩法(如红包雨、主持人话题),服务端将配置填入动态模板,通过PowerMsg通道实时推送至客户端。Weex会场解析模板字段,触发对应动画或页面跳转(如拉起宝箱、红包雨H5页面)。

  • 高并发互动优化

    点赞动画降级:在低端设备上通过Orange开关减少动画数量或屏蔽动画,避免卡顿。

    对象池预分配:计划复用动画帧对象(未上线),进一步降低渲染压力。

3. 性能优化保障流畅体验
  • 懒加载与布局精简

    竖屏优先初始化:仅加载竖屏所需组件,横屏组件延迟初始化。

    冗余View删除:移除Visibility=gone的冗余布局,减少层级,提升加载速度。

  • 转屏体验优化

    直接操作VideoView:转屏时记录视频布局参数,将其从父View中取出并附加到Window的decorView,避免黑屏卡顿。

  • 视频圆角处理

    Native层切角:通过自定义播放器组件的borderRadius属性,将UED设计的圆角值传递至Native层,直接切割视频视图,解决Android端视频透出问题。

4. 降级策略保障稳定性
  • 自定义降级逻辑与常规Weex降级至H5不同,猫晚直播在加载/跳转/运行异常时,跳转至Native备用直播间,确保核心功能可用性。
5. 服务端压力减轻
  • 静态资源预推通过zcache将JS、图片等资源推送至客户端,减少猫晚当天服务端请求压力,提升页面加载速度与成功率。

  • 请求合并与QPS优化封装Mtop Weex Module,合并重复接口请求,缓存短期重复请求,降低服务端QPS压力十余万。

成果与后续影响
  • 核心数据

    猫晚直播同时在线达209万,引导点击用户655万。

    页面加载速度、转屏流畅度显著提升,低端设备亦可快速响应。

  • 长期价值

    Weex直播间成为优酷直播业务全量上线方案,原生直播间下线。

    互动玩法(如红包雨、竞猜)成为常态化运营手段,后续承接跨年晚会、春晚等大型活动。

Weex通过技术架构设计与性能优化,成功支撑了猫晚直播的高并发、高复杂度场景,为后续大型活动直播提供了可复用的技术范式。