太阳集团5493conlogo

  • 微博
  • 微信
  • QQ好友
  • QQ空间
  • 百度
详细内容

使用云开发快速搭建百万在线的实时聊天系统-杭州网站建设为你呈现

时间:2020-09-06     作者:杭州网站建设【转载】   来自:微信开发者

1.png

8月27日至30日是一年一度的《英雄联盟》周年盛典,由于多方面因素,本次盛会不支持线下观赛。为此,英雄联盟联合云开发为各位玩家打造了一套大量玩家同时在线的聊天系统——内场观赛区,可供大量玩家同时在线交流。这么一套大量在线的聊天系统,以往需要一定人力、至少一个月以上的时间来打造,而借助云开发,只需1位开发工程师仅用2-3周就完成了开发到上线的全流程!那么,该聊天系统具体是如何设计和落地的呢?



2.png

首先,需要介绍本次活动的主要场景需求:

1、高并发的在线聊天室

每个虚拟聊天室房间可容纳5人观看比赛,并支持实时互动,包括聊天、发送表情、动作等交互方式,此外聊天室还设有战队应援等模块。

3.png

2、房间匹配

玩家每次进入网页时,系统都会查询当前房间的匹配情况。
3、高并发的实时抽奖活动

观看直播的各位玩家可在比赛的某个时间节点,点击页面中的“宝箱”参与实时抽奖。

4.png

上述三个场景面临的压力各不相同:

首先,聊天室的场景中,因为涉及聊天信息的存储和分发,除了对消息推送的实时性考验外,最大的考验是对数据存储层的压力。对于百万量级的直播场景,比赛的关键时刻往往也是玩家最活跃、进行“刷屏”互动的时候,理论顶峰 100W 的QPS,对后端的存储压力无疑是巨大的。

接着,房间匹配场景。正如上文所介绍,进入页面后第一个逻辑就是查询当前用户的历史房间id,这个貌似没有很大压力,但是考虑到极端情况下,如果直播出现卡顿,大量用户同时刷新页面,将对系统稳定性带来巨大的考验。

最后,实时抽奖环节如何保障大量用户在几乎同一时间完成“点击-开奖”的抽奖交互,同样是一项不小的挑战。


5.png

那么应对这聊天系统中的三大挑战,云开发如何一一攻克?

首先,应对聊天室场景的数据压力:一个字——「」!即将聊天信息的数据流,打散至50个环境中,并将系统分为主环境和聊天室环境,主环境用于承载房间匹配、用户房间查询、房间数据库环境映射关系查询等通用逻辑后台;而聊天室环境则负责虚拟房间内玩家的实时交互,包括文字消息、表情、动作等等。

6.png
聊天室数据拆分整体流程

解决完数据压力问题,聊天逻辑的实现就比较清晰了:同一个房间的人,根据 roomid 监听房间的聊天记录,当有人发送消息、写入聊天信息后,云开发的实时推送能力会自动推送消息给所有监听者,聊天室内的玩家就能看到聊天消息了。而表情和动作交互,底层也是将其转换成 json 对象来进行展现。

7.png

聊天记录的数据结构示例

接着,应对大量用户同时刷新页面的高并发风险的方法:一个关键词——「限频」。具体来说,虽然云开发自带的云函数有抗高并发的能力,但是因为查询历史房间 id 需要操作数据库,为了保障数据库层不被击垮,采用云函数的限频能力,就可以很好的解决这一问题。前端只要try catch一下,再通过优化 UI 交互,就可以完美应对极端情况的风险,还能很好的节约成本。


最后,针对大量用户在同一时间开启抽奖的实时性压力:还是一个关键词——「原生」。利用云开发原生提供的实时数据推送能力能够完美支撑此场景,开发者只需写一行代码 watch 一下后端的数据变化即可,而无需进行其他操作(点击详细了解实时数据推送)。
8.png
9.png

 

本次《英雄联盟》9周年盛典活动,云开发利用实时数据推送、弹性扩缩容等能力打造了多人在线级的实时聊天系统,攻克了数据存储压力大、高并发风险和实时性要求高等三大挑战,抗住较大流量洪峰,支持活动快速上线,缩减时间与人力成本。

* 本文转载自腾讯云云开发公众号

image.png




关于小程序云开发,使用过程中若有问题或建议,欢迎来到微信开放社区 #云开发 专区一起交流讨论。



文章已于2020-09-03修改阅读原文



太阳集团2138手机版
更多
  • Q3财报:有「新」有「增」-杭州网络公司

    Q3财报:有「新」有「增」-杭州网络公司

    腾讯2024年第三季度财报显示,期内:微信及WeChat的合并月活跃账户数13.82亿。财报还提到:视频号得益于广告主对视频号、小程序及微信搜一搜广告库存的强劲

  • 微信小店助手APP来啦,方便得很!-杭州

    微信小店助手APP来啦,方便得很!-杭州

    一个好消息!微信小店助手APP已正式上架各大应用市场,安卓/iOS都可!商家经营更方便啦~核心功能速览——1、小店的管理,移动端都能搞定支持在移动端进行商品、交

  • 港澳小程序交易翻倍,有商家月入八位数!-

    港澳小程序交易翻倍,有商家月入八位数!-

    10月24日,微信公开课·港澳专场在香港举办。聚焦于 “双向奔赴:新生态、新机遇” 这一主题,微信团队以及深耕港澳小程序的标杆商家、服务商齐聚,一起探讨了大湾区

  • 4个月销售额翻10倍,这家小众户外品牌怎

    4个月销售额翻10倍,这家小众户外品牌怎

    微信小店 Lafuma户外热这个小众品牌如何在视频号破圈?首场达播试水,销售额突破300万平均客单价1800元常态化直播带货,4个月实现月销售额翻10倍数据来自

  • 微信小店11.11好物节即将启动!三大带

    微信小店11.11好物节即将启动!三大带

    微信小店 11.11 好物节活动激励计划低门槛 高激励主播作为带货主播报名活动,并选择“购物”类目开播,累计成交数据满足对应目标门槛,即可在活动结束后获得对应电

  • 这个爬山搭子,十几万黄山游客都在用-杭州

    这个爬山搭子,十几万黄山游客都在用-杭州

    国庆假期就要来了,有人想去爬黄山吗?琐事缠身的你可能还没来得及做攻略,又或者没订到合适的酒店……没关系!现在,@黄山旅游官方平台 通过企业微信、小程序、视频号等

  • 小程序,玩法上“新”!-杭州抖音短视频直

    小程序,玩法上“新”!-杭州抖音短视频直

    这波上“新”,是新加坡的“新” !9月23日,微信公开课·新加坡专场启幕,微信团队奔赴狮城,携手新加坡旅游局以及当地多家标杆企业,一起探讨小程序在跨境生态下的新

  • 官宣:微信小店新商家激励政策-杭州微信小

    官宣:微信小店新商家激励政策-杭州微信小

    五大激励政策助力新商家成长微信小店新商家激励政策血降门槛0保证金试运营减成本前百万自营交易额的技术服务费率减至1%刘促增长新商家成长流量激励加福利开通运费险享「

  • 如何做出NB的视频号?-杭州网络公司为你

    如何做出NB的视频号?-杭州网络公司为你

    @闪电制片厂 @国翠儿 @时差岛 @王可乐说这些NB的视频号你刷到过吗?最近,他们和视频号一起在NB的城市宁波聚会,现场分享了创作秘籍,视频号官方和大家交流了短

  • 又贵又火,之禾视频号年销3000万-杭州

    又贵又火,之禾视频号年销3000万-杭州

    3000多的牛仔裤,5000一件的亚麻衬衫,上万一条的桑蚕丝连衣裙……来自上海的时装品牌之禾因为高定价而出圈,并且业绩还在持续攀升。曾有外媒报道称,2022年,

太阳集团5493con是一家专门致力于为企业提供全方位网站建设服务。年轻的我们带着梦想和对网络的热情走在互联网道路的前沿,一路走来,我们的努力和真诚得到了更多客户的认可。在未来的发在未来的发...

浙公网安备:33010602011153

seo seo