IPC机制
概念:进程间通信或者跨进程通信,是指两个进程之间进行数据交换的过程。
线程:一般指CPU调度的最小单元.
进程:一般指一个执行单元,在PC和移动设备上指一个程序或一个应用.
详细介绍:
https://blog.csdn.net/zizidemenghanxiao/article/details/50341773
https://blog.csdn.net/lxzmmd/article/details/51440981
Android 消息推送
- 概念:主动向APP用户推送消息
- 原理:主要有两种方式:、Pull
1.Pull:(基于短连接)客户端隔固定时间主动向服务器获取消息,有最新消息,则推送到客户端。
2.Push:(基于长连接)服务器有更新消息时,主动发送给客户端
注:Push方式会优于Pull,Pull不断监听服务器信息变化,更费资源。 - 消息推送七种方案:
名称 | 概念 | 原理 | 描述 | 优点 | 缺点 |
---|---|---|---|---|---|
C2DM(云端推送) | Android系统级别的消息推送服务 | 基于Push方式 | C2DM服务负责处理诸如消息排队等事务,并向运行于目标设备上的应用程序分发这些消息。 | C2DM提供了一个简单的、轻量级的机制,允许服务器可以通知移动应用程序直接与服务器进行通信,以便于从服务器获取应用程序更新和用户数据。 | 1、依赖于Google官方提供的C2DM服务器,需要翻墙,成本高;2、需要用户手机安装Google服务。 |
轮询 | ** | 基于Pull方式 | 应用程序隔固定时间主动与服务器进行连接并查询是否有新的消息 | 实时性好 | 1、成本大,需要自己实现与服务器之间的通信,例如消息排队等;2、到达率不确定,考虑轮询的频率:太低可能导致消息的延迟;太高,更费客户端的资源(CPU资源、网络流量、系统电量)和服务器资源(网络带宽) |
SMS信令推送 | ** | 基于Push方式 | 服务器有新消息时,发送1条类似短信的信令给客户端,客户端通过拦截信令,解析消息内容 / 向服务器获取信息 | 可实现完全的实时操作 | 成本高(主要是短信资费的支出) |
MQTT协议 | 轻量级的消息发布/订阅协议 | 基于Push方式 | wmqtt.jar 是IBM提供的MQTT协议的实现 | ** | ** |
XMPP协议 | 可扩展消息与存在协议,是基于可扩展标记语言(XML)的协议,是目前主流的四种IM协议之一 | ** | XMPP中定义了三个角色,分别是客户端、服务器和网关 | 1、开源;2、简单(XML易于解析与阅读);3、扩展性强 | 如果将消息从服务器上推送出去,则不管消息是否成功到达客户端手机上。 |
第三方平台 | 相关推送平台 | ** | 小米、华为;极光、友盟、云巴;阿里云移动推送、腾讯信鸽推送、百度云推送 | 实现简单、到达率高 | 安全性低,服务会被杀死 |
自己搭建 | ** | ** | 如果你的产品对于消息推送具备较高的功能和性能要求,同时对安全性要求非常高的话,自己搭建可能是最好的方式,但这种方式无疑成本是最高的。 | 安全性高 | 成本高 |
- Android 和 IOS 推送区别