从 0 到 1,亿级消息推送的稳定性保障 | 得物技术

1 消息推送简介

1.1 什么是消息推送

消息推送每天都在我们的手机上发生,如图所示,除非你的手机没有安装 App 或关闭了通知栏权限。

1.2 消息推送的价值

从用户的生命周期来看,消息推送对于提高 App 活跃度、提升用户粘性和用户留存率都起到了重要作用。

提升新用户次日留存,低成本促活,对平台的短期留存率影响显著。

提升老用户活跃度,push 可以通过外部提醒起到拉活的作用。很多内容平台类 App 的用户 push 首次启动占比可达 10%以上,因此 push 对 DAU 的增量贡献不容小觑。

流失用户召回,当用户流失后,若 push 权限未关闭,通过消息推送的方式,有可能重新唤醒用户。

2 背景和痛点

消息中心为得物 App 提供了强大,高效的用户触达渠道,其中 push 对于得物 DAU 的贡献有可观的占比,这也就意味着每一条推送消息都是一次与用户沟通的宝贵机会,所以推送的稳定性成为我们关注的首要问题,那么我们遇到的以下痛点就亟待解决。消息中心没有明确消息推送的耗时标准,业务和技术之间存在 gap,业务方对于推送的消息什么时候到达没有明确的心理预期。从技术上来讲消息推送各个节点的耗时不明确,无法对各个节点的耗时做针对性的优化,这也就需要我们针对消息推送的节点耗时进行监控。消息推送的稳定性依赖于第三方的推送通道,而三方通道对于我们来讲就是个黑盒子,如何做到三方通道异常及时发现并止损也是需要考虑的问题。在我们正常的迭代过程中有时候不可避免的会出现些异常或者有坏味道的代码,这些问题能不能及时发现、及时止损,能不能及时告警出来。

3 监控的实践

3.1 SLA 监控简介

SLA(Service-Level Agreement),也就是服务等级协议,指的是系统服务提供者(Provider)对客户(Customer)的一个服务承诺。这是衡量一个大型分布式系统是否“健康”的常见方法。在开发设计系统服务的时候,无论面对的客户是公司外部的个人、商业用户,还是公司内的不同业务部门,我们都应该对自己所设计的系统服务有一个定义好的 SLA。因为 SLA 是一种服务承诺,所以指标可以多种多样。最常见的四个 SLA 指标,可用性、准确性、系统容量和延迟。

对于消息推送而言,我们主要关注的是消息能否及时可靠的送达给用户,也就是 SLA 中关注的时效性和稳定性的问题。目前消息中心针对实效性和稳定性的开发已经完成并初显成效,下面主要针对时效性和稳定性的监控做一些介绍。

3.2 系统架构图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值