[问题] ajax聊天室最有效率的update方法…

楼主: banana2014 (香蕉共和国)   2016-05-08 23:07:54
我想用ajax来做一个简单的聊天室
在update聊天讯息的部分我想了很久
因为我不晓得该怎么让服务器端在一有新讯息出现时,自动传更新给客户端
也就是不要用“客户端每隔5秒发送request到服务器端检查是否有新讯息”的这种方式
因为这样太没效率了
而且会浪费不必要的资源
如果迟迟没有新讯息更新怎么办呢?
那是不是就一直让电脑一直做不必要的检查呢?
所以有没有那种“服务器给客户端即时的更新资料”而不是“客户端每隔一段时间检查伺
服器是否有更新”的程式呢?
谢谢
**注:我是用php当作服务器端语言
作者: ck574b027 (荒围!定厝!贼!妹!)   2016-05-08 23:47:00
websocket
作者: mars90226 (火星人)   2016-05-09 00:19:00
Google server push 就是你要的*搜寻 (怕有人误会成Google的功能)
作者: tooto1985 ( )   2016-05-09 11:37:00
websocket
作者: mrbigmouth (大嘴先生)   2016-05-09 15:09:00
旧浏览器可以用ajax long polling技术
作者: ck574b027 (荒围!定厝!贼!妹!)   2016-05-09 16:28:00
"简单的聊天室" 还要考虑浏览器,你应该先想一下用途和谁会用,再决定要怎么做。另外,如果是 php,搜寻php websocket,看那些library怎么做,可能会比较快上手旧的没救,ws 本来就是为了解决这问题才出来的新规格。
作者: mrbigmouth (大嘴先生)   2016-05-10 05:57:00
long polling至少不用每五秒都发request啦 XD
作者: leonjye   2016-05-11 19:29:00
comet跟Server event
作者: rarex (╰(〒皿〒)╯)   2016-05-11 21:44:00
建议直接找library 起码相容性和效能都有一定的处理了
作者: mygirl30229 (Cian)   2016-05-12 19:31:00
用NodeJS 加 socket.io 简易版很好做
作者: ImL1s   2016-05-24 04:28:00
websocket+1
作者: oToToT (屁孩)   2016-05-28 07:19:00
聊天室不是九成都在用websocket了吗www

Links booklink

Contact Us: admin [ a t ] ucptt.com