php在线聊天室插件如何实现

dreamhack 发布于 2013/08/28 11:59
阅读 2K+
收藏 1
PHP
现在项目要做一个在线聊天的插件。。打算放在首页的。。折腾了俩天mysql+ajax,上面说对服务器压力太大。。想用socket实现,问题是php对socket支持也不太好。。。还有其他一些数据也要用数据库啊,socket解决不了所有问题啊,。哎!还要什麽视频语音功能。。。这哪里是插件嘛!求指教啊!
加载中
0
首席打酱油
首席打酱油

还可以优化的就是ajax的长查询了,具体见

http://www.oschina.net/question/133440_113028?sort=default&p=2

中的第二页布谷鸟的回答,不过他服务端是java的,你对着php改一下就可以了

dreamhack
dreamhack
ok,谢谢了,哈哈
0
卡巴
卡巴

视频,语音的话,就要考虑flash了。这个php无法做的。

如果不需要太过注重实时性的话,就忽略socket吧。客户端定时响服务端发送请求。

这东西不如 用网上开源的更好。

dreamhack
dreamhack
考虑socket主要因为数据库压力,实时性嘛,不太差就好了
0
vincent_x
vincent_x

四款网页即时聊天插件,可以整合到网站的IM插件

http://hi.baidu.com/qdzmc/item/23b5c6177082a8ce38cb3054

0
oxsicn
oxsicn

考虑采用websocket 直接接受到信息直接转发给其他用户就可以了 ,无需数据库

dreamhack
dreamhack
回复 @鑫酱 :啊哈,win7内置的IE支持,貌似可以用这个了,兄台,有木有开源的此类项目呀?
dreamhack
dreamhack
回复 @鑫酱 : IE支持很差劲。。我再想想决定用哪个!
oxsicn
oxsicn
回复 @dreamhack : 每次交互都存储在内存中 达到一定的量或者时间 进行存储数据库, 清理内存. websocket: --优点:内存读写快 响应快 高并发 websocket响应快 --缺点:需要搭建服务,不能用于虚拟空间.websocket不兼容低端浏览器
dreamhack
dreamhack
问题是还想存聊天纪录。。。等等信息!
0
wlwrnet
wlwrnet
可以用Node.js + socket.io 实现咯。。而且 socket.io 把服务器端和客户端都封装好了,很容易调用。
0
首席打酱油
首席打酱油

lz  你不会每次轮训都要查数据库和写数据库吧

写个缓存,每次都在缓存中改和差,定时往数据库中写,会好很多

又不是什么重要数据

dreamhack
dreamhack
回复 @鑫酱 : 网站首页的一个小插件,也用户上k就会另想办法的。这个没太大困难
oxsicn
oxsicn
回复 @dreamhack : 硬盘io总是一个瓶颈 存内存
dreamhack
dreamhack
咦,好主意啊,我咋没想到,我傻x了,我直接存数组算了?
返回顶部
顶部