android 消息推送是什么,消息推送一般是怎么做的

android 消息推送是什么,消息推送一般是怎么做的,第1张

Android消息推送,基本上都是以长链接的方式实现的,其原理是客户端主动和服务器建立TCP长链接,长链接建立之后,客户端定期向服务器发送心跳包用于保持链接,当有消息要发送的时候,服务器可以直接通过这个已经建立好的长链接,将消息发送到客户端。

Android端可以通过两种方式实现消息推送,一种是自建推送平台,但这种方式耗时耗力成本高,且长链接的稳定性和存活性难以保障;另外一种是直接选用像个推这样的第三方消息推送供应商。开发者只需要集成个推消息推送SDK,即可简单、快捷地实现Android平台的消息推送功能,有效提高产品活跃度、增加用户留存。此外,个推消息推送在消息推送的基本性能上,如省电省流量、长链接稳定性、推送速率、安全性等方面都具有领先业内的优势。

如果您对个推消息推送感兴趣,欢迎您前往个推开发者中心免费注册体验。

个推消息推送工作原理

微信告警通知、轮询。
微信告警通知就是将告警信息发送至微信上,强大的告警平台还支持钉钉,手机,短信等方式通知告警。轮询是客户端定时向服务器发送Ajax请求,服务器接到请求后马上返回响应信息。因此装备入云的告警推送方式有微信告警通知、轮询。
第一次触发告警推送,后续只要没恢复就不再报警,推送时间间隔。

APP推送的三种实现方式:
1轮询方式(PULL)
客户端和服务器定期的建立连接,通过消息队列等方式来查询是否有新的消息
2短信推送方式(SMS PUSH)
通过短信发送推送消息,并在客户端植入短信拦截模块(主要针对 Android 平台),可以实现对短信进行拦截并提取其中的内容转发给 App 应用处理
3长连接方式(PUSH)
移动 Push 推送基于 TCP 长连接实现, 客户端主动和服务器建立 TCP 长连接之后, 客户端定期向服务器发送心跳包用于保持连接, 有消息的时候, 服务器直接通过这个已经建立好的 TCP 连接通知客户端
基于 TCP 长连接的方式是主流的推送方式,基于该推送方式逐步发展出系统级、应用级一系列的推送解决方案
系统级方案包括iOS 平台(APNs)Android 平台(C2DM),鉴于 Android 平台 C2DM 推送的不可用性,国内涌现出大量的第三方推送服务提供商目前应用最为广泛的第三方推送服务提供商比如极光推送就很不错,极光推送是经过考验的大规模 App 推送平台,每天推送消息量级为数百亿条。开发者集成 SDK 后,可以通过调用 API 推送消息。

接入他们第三方推送对服务器压力最小。开发者可以节省 90% 的成本,而用户在推送上每月平均只会花掉 08-12M 的流量,是个流量和耗电量都可控的推送。自主开发的推送在用户到达一定规模后容易让服务器面临不可控的压力,甚至崩溃。
第三方推送建议用极光推送,极光推送作为较成熟的推送平台,通过集成基础 *** 作。为客户端以及服务端节省了大量时间来实现推送效果。
极光推送优势如下:(1)用户注册数无限制;(2)推送速度:10万条/秒(共享)|| 20万条/秒(独享);(3)独立推送通道、公网推送加速方案;(4)724专人专线服务;(1)最大并发数无限制;(2)推送速度:20万条/秒(独享);(3)推送条数无限制;(4)用户可分群推送;(5)专向高速推送通道;(6)离线消息可保存条数50条;(7)VIP技术支持。(8)极光官网上的文档很全,并且有互动问答以及博客长文,但是个推官网上没有;
极光推送已经覆盖了近10亿Android、IOS终端,30多万款APP应用,服务总用户数超过30亿,每天消息推送量达5亿多条,已成为移动应用数据平台。

1、以Amazon的CloudFront为代表,内容发布者主动将需要发布的资源推送到CDN发布服务器上,然后由CDN服务商分发到其各节点。国内的提供商有UpYun。

2、以CloudFlare为代表,与前者不同,内容不需要主动发布,而是在浏览器向CDN请求资源时,CDN服务才主动向后端的资源服务器抓取资源。国内的提供商有WebLuker。

这两种服务,一种推送,一种拉取。后者除了在DNS设置上稍显麻烦外,其它方便性均超过前者,特别是因为内容源在自己的服务器上,可以灵活的设置url,比如动态合并js之类的功能,都可以实现了。

而前者除了多一个存储备份的功能外,内容的组织形式较为死板,必须按照静态目录的方式组织,不适合较为灵活的开发。似乎后者才是大势所趋。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/13495132.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-18
下一篇 2023-08-18

发表评论

登录后才能评论

评论列表(0条)

保存