CI3怎么实现服务端消息推送?

WBOY
發布: 2016-06-06 20:13:20
原創
925 人瀏覽過

最近项目需要使用到服务端消息同步到移动端,有什么好的解决方案呢?

我自己首先想到的是两种解决方案:

第一种:ajax轮询(显然不是很好的一种方法,因为服务端消息是个未知信息,如果一直保持的轮询的话,即使间隔几秒,移动端没有轮询的结束操作,就像是一个没有终止操作的无限循环)

第二种:使用websocket,在业务需要实时更新的地方建立一个长连接,google了很多资料,网上很多人建议使用Ratchet,那么问题是,有人使用过这个工具库么?它跟国内的workman有什么异同点呢??该如何选择这两个工具。。。

对了,重要的一点忘了,现在项目是基于CI3开发的,所以还要考虑到和CI3的兼容性。

下面是我在搜集资料中的一些关键内容:
http://stackoverflow.com/questions/34389...
http://socketo.me/
http://forum.codeigniter.com/thread-6340...

回复内容:

最近项目需要使用到服务端消息同步到移动端,有什么好的解决方案呢?

我自己首先想到的是两种解决方案:

第一种:ajax轮询(显然不是很好的一种方法,因为服务端消息是个未知信息,如果一直保持的轮询的话,即使间隔几秒,移动端没有轮询的结束操作,就像是一个没有终止操作的无限循环)

第二种:使用websocket,在业务需要实时更新的地方建立一个长连接,google了很多资料,网上很多人建议使用Ratchet,那么问题是,有人使用过这个工具库么?它跟国内的workman有什么异同点呢??该如何选择这两个工具。。。

对了,重要的一点忘了,现在项目是基于CI3开发的,所以还要考虑到和CI3的兼容性。

下面是我在搜集资料中的一些关键内容:
http://stackoverflow.com/questions/34389...
http://socketo.me/
http://forum.codeigniter.com/thread-6340...

实时双向通信肯定是用 Websocket,不过我不建议用 PHP 做 websocket 的服务端,建议用 nodejs
另外,如果只是服务器推送,浏览器端可以用 EventSource,这个也是一个 HTML5 标准。

服务端消息同步到移动端

同步是双向的,从你的描述中没有看到需要双向同步。

可以试试第三方推送:比如个推、JPush等。

如果是双向的,可以使用 websocket。

为何不考虑异步推送? 服务器端一旦有新消息就给移动的主动推送,移动端有接收消息接口就可以了

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!