受教了,感谢分享 |
学习了,谢谢 |
受教了 |
引用:TeochewZhang 发表于 2017-09-25 16:54 从理论上来说,websocket的是基于TCP实现的,握手完成后的长连接通信过程中,流量消耗就是你自已收发的数据,也不存在说什么很耗流量。 关键看你传的是什么数据了,就像用XMPP协议的说它很耗流量一样,但这不能怪TCP呢,对吧。所以关键看你要传的数据格式是什么。 另外,现在WebSocket越来越成熟,手机端的原生代码库也出现来越来越多的Websocket库,所以在手机端用原生代码以Websocket为基础来实现即时通讯,现在看来也是个可行的方案,但主要看手机端的websocket库的成熟度、稳定性,就像当初在原生端选择http的库一样(模拟的是浏览器上发起http请求),道理是相同的。 有机会的话,我倒是有想法为MobileIMSDK-Web开发原生的手机端lib,这样ios原生代码、android原生代码、Web客户端都可以用同一套WebSocket服务端了,这样就不用维护两种类型的服务端,服务端省事太多了。 |
引用:漠北之夜 发表于 2016-11-22 09:10 为什么原生的用websocket会耗费流量?那用什么呢?我看有些推送SDK是用websocket的。 |
很不错! |
引用:漠北之夜 发表于 2016-11-22 09:10 原生用WebSocket有点脱裤子放屁的意思。 |
引用:JackJiang 发表于 2016-11-19 20:13 原生的 |
引用:漠北之夜 发表于 2016-11-19 10:56 如果是原生APP的话,用Websocket就有点本末倒置了。如果是Hybrid混合HTML5应用,那也就无可厚非。 |
引用:JackJiang 发表于 2016-11-10 21:22 是啊,公司技术负责人做了十几年的后台开发,不懂移动端这一块,我对IM一开始也没接触过,当初我是推荐他们用第三方的推送,他们又说不这么搞,说什么B/S是用的WebSocket,要用那一套,直接上来需求都不是很明确就赶紧干,我都无语了 |
引用:漠北之夜 发表于 2016-11-10 15:59 你在移动端用Websocket推送? |
公司用的WebSocket做推送,流量耗费好大 |
好 很不错 |
引用另一个网友的评论: PHP即时通讯国人就搞了可用的两套方案,一套是WorkerMan,一套是Swoole. 国人纯PHP开发的高性能聊天室框架WorkerMan: http://www.workerman.net/workerman-chat http://doc.workerman.net/start/environment.html 前端:HTML5 WebSocket 后端:PHP-CLI (不依赖Nginx/Apache) WorkerMan用到了若干PHP进程控制PECL扩展(不支持Windows): pcntl: 进程创建,信号控制,定时器,进程状态监控 posix: 守护进程化,用户组控制 sysvshm: 共享内存,进程间通信 sysvmsg: 消息队列,进程间通信 libevent: 让PHP可以使用系统epoll/kqueue等高级事件处理机制,能够显著提高WorkerMan在高并发连接时CPU利用率. proctitle: 更改进程的名称 PECL扩展Swoole支持使用PHP来编写高性能的socket应用: pecl remote-info swoole http://www.swoole.com http://git.oschina.net/matyhtf/swoole/blob/master/examples PHPWebIM是Swoole官方基于PHP Swoole扩展和Swoole Framework开发的WebSocket网页即时聊天工具. PHPWebIM支持WebSocket+Comet两种协议,可用于所有种类的浏览器包括IE. https://github.com/matyhtf/PHPWebIM Demo: http://webim.swoole.com |
受教了· |
不错不错,秒懂了 |
总结的很好,再也不用纠结了该选啥了,一目了然 |