原生iOS解决方案
消息推送白皮书
第一章 产品概述
消息推送平台是一站式APP信息推送平台,为开发者提供免费的消息推送服务,保证开发者可以即时地向其应用程序的用户精准传递通知或者消息,以提升用户留存率和活跃度。平台提供整合了Android推送、iOS推送的统一推送服务,可实现业务信息推送、针对人群的定制化推送、定时定量推送等。
第二章 产品优势
2.1 高速稳定
支持每日百亿级消息推送量,以百万条每秒的速度将消息通知推送到各个用户,并对发送失败的用户配置重发机制,确保消息的及时性与有效性;
2.2 简单灵活
提供成熟的SDK和服务端接口,便于业务方根据自身需求实现快速接入;同时提供可视化界面,便于运营分析,针对不同特性用户群体实现精准推送;
2.3 多维度推送
支持iOS、Android、IPAD等多个平台,支持单用户推送、批量用户推送等模式,支持广播、定向通知等多种推送方式,同时可以实时获取推送效果,便于业务跟踪。
2.4 监控分析
可以在消息管理平台实时查看推送结果,提供多个维度及时监控消息推送量、过滤量、触达量、打开量等多个数据指标,帮助业务从多个维度理解当前的数据效果。
第三章 应用场景
适用于有离线消息推送需求的APP产品,覆盖Android端、iOS端、IPAD等,不限于行业和领域。消息类型可包括应用消息通知、新闻、事件提醒、营销信息定向推送和广播等,用以提高产品的用户活跃度和留存率。
第四章 总体设计
4.1 工作流程
消息推送由消息创建者(服务端、推送平台)创建消息,然后经推送服务将消息分发给用户。整体工作流程如下图:
4.2 产品架构
4.3 部署架构
第五章 产品功能
5.1 客户端SDK
客户端SDK提供给APP推送能力,主要的功能为上传设备的基本信息、显示消息以及消息触达之后的点击等操作。
5.2 服务端推送模块、API
服务端推送模块除了依赖自有的推送服务外,还可以集成其他手机厂商的推送服务,目前支持小米、华为、魅族三个厂商。厂商推送可以提高消息的触达率。
服务端API提供了消息推送所需要的基本接口,主要包括创建消息、查询历史消息、查询消息的推送效果等。便于用户根据自己的需求定制自己的业务后台,生成自己的业务系统。
5.3 消息管理平台
消息管理平台是基础运营平台,主要包含:
- 应用管理:消息推送以应用为维度,实现应用创建与审核,并进行基础信息维护,包括名称、描述、接入平台(iOS或Androd)、证书管理(iOS端需填写证书);
- 权限管理:实现应用权限的配置,系统支持管理员权限与运营权限;管理员权限拥有该应用的所有操作权限,运营权限拥有该应用的消息推送及数据查看权限,不可对应用进行修改及权限分配;
- 消息推送:实现消息创建与推送管理,系统支持平台创建与接口传递共两种方式创建消息,并通过人群配置实现定向精准化推送;
- 推送效果监控:实现消息推送结果的数据监控管理,可查看消息发送流转情况,以可视化图表方式,从处理量、触达量、打开量、接收、打开时间等多维度展现推送效果。
第六章 部署环境要求
6.1 硬件要求
- 服务器资源
用途 | 虚拟化程度 | 配置说明 | 数量 |
---|---|---|---|
Send-pservice | 虚拟机 | 4C8G60G | 2 |
Send-api | 虚拟机 | 4C8G60G | 4 |
Send-worker | 虚拟机 | 4C8G60G | 2 |
mutate | 虚拟机 | 4C8G60G | 4 |
channel | 虚拟机 | 4C8G60G | 4 |
habitat | 虚拟机 | 4C8G60G | 2 |
slark | 虚拟机 | 4C8G60G | 2 |
report | 虚拟机 | 4C8G60G | 2 |
bane | 虚拟机 | 4C8G60G | 4 |
DataStatistics | 虚拟机 | 4C8G60G | 1 |
DataGateway | 虚拟机 | 4C8G60G | 1 |
6.2 软件要求
- 操作系统
建议CentOS 7.0以上;
- 中间件
软件名称 | 软件版本 | 说明 |
---|---|---|
MySQL | 5.5.38 | |
Sonatype Nexus | 3.16.2-01 | |
Jenkins | 2.32.3 | |
Redis | 2.8 | |
Kafka | 1.0及以上 | |
Flink | 1.4.2及以上 | |
ElasticSearch | 5.4.3及以上 | |
Zookeeper | 3.4.0及以上 |