MQTT构筑运营平台与游戏端的交互通道

客户需求:

运营平台中关于运营消息以及广告推送等场景,如:

• 各类服务器运维升级等跑马灯信息;
• 账号被踢下线信息;
• 悬浮窗广告;
• 普通消息推送

消息由平台主动推送,当游戏接入端在近百万、千万级的情况下,如何选择安全,稳定,可靠的接方式是一件头痛的事情。运营方推送的特点与要求如下:

1. 海量的用户触达:一款成功的游戏总客户数经常超百万、千万。日活及同时在线数量巨大;

2. 消息的时效性不同:有些消息是在某时间段内都生效的(例如,主游戏服运维升级通知),无论客户当前的状态是否在线,都需要游戏在线时收到。有些消息是对于当前在线的客户(例如,账号踢下线信息)才有意义。

3. 精准的消息投递:消息对某类特征的客户群体进行广播(例如,不同的广告推送不同等级的游戏玩家)

4. 连接的轻量级消耗:这类数据的交互对比游戏本身操控来说,并不会很频繁,要求链路占用的客户端运行资源尽可能的少。

5. SDK依赖资源简洁:在游戏领域里,由研发团队会产生游戏母包,而运营发行方会在母包的基础上嵌入运营所需要的SDK包,例如包括支付功能、数据推送功能;那么对于推送功能本身所依赖的资源包就越小越好。

解决方案:

通过阿里云微消息队列MQTT版产品来实现平台的推广运营功能,微消息队列MQTT版有协议非常简洁,支持各种语言SDK, 接入简单的特性,也支持各种订阅关系,支持可配置的消息触达QOS质量,而且可以观测客户端的连接情况,支持百万级的连接,契合推广运营平台的场景。
image.png

业务价值:

平稳支持业务的变化发展:在使用了微消息队列MQTT版方案后,充分利用了云上资源的弹性可得特性,在我们游戏客户体量本身会随着游戏的热度变化而变化的同时,非常稳定地支持着业务的潮汐变化。

合理技术选型简化了工作: 使用商业的微消息队列MQTT版方案后,复杂的链路与订阅关系以及推送问题全交给微消息队列MQTT版,这样简化了基础设施的建设运维,可以把精力全心全意地投入到业务上的实现。

客户证言

“微消息队列MQTT版这种资源占用小,连接数量多,维护简单的产品,特别适合我们这种游戏第三方以SDK接入的运营推送类应用,在比较完http轮询与socket方案后,还是MQTT方案为最优选择。而使用阿里的商业化产品,除了无需担忧稳定性外,还高度灵活地匹配我们游戏客户大规模变化的情况,让我们享受了技术带来的便利与快乐。”——尚米技术负责人

阿里云专门成立了“互联网架构升级实战课”钉钉群,每周邀请一位阿里云专家在群内进行行业最佳实践直播,每天分享行业前沿干货,欢迎扫码或钉钉搜索群号加入:35712134。

猜你喜欢

转载自blog.csdn.net/weixin_39860915/article/details/109643703