PHP,javascript,ajax - 2个用户之间的通信

时间:2011-04-12 08:22:54

标签: php javascript ajax communication

大家好日子。

我需要这样做:

当用户X按下按钮时,用户Y会看到一张照片。在此之前,用户Y什么都看不见

我是这样做的:我在mysql服务器上创建了一个数据库,并创建了一个包含照片和标志的表。当用户X按下按钮时,我发送ajax请求并将标志更改为相应的照片。用户Y还每1秒发送一次ajax请求以查看是否有任何更改。

听起来不错,看起来不错,有效......但确实如此。当100000个用户每1秒发送1个ajax请求时,服务器崩溃。首先是mysql服务器,然后是apache。

所以...我的问题是,如果没有这么多的ajax请求,有没有这样做呢?有点像发送带有某个“东西”的页面,告诉浏览器保持相同的套接字并稍后发送图像?像流一样的东西,而不是图像是html页面/图像/等等。

我知道java applet会是一个解决方案,但我需要一个php(用于服务器端)+ js(用于客户端)解决方案。

是的,我知道我可能会得到一个“你不能”回答,但值得一试。

2 个答案:

答案 0 :(得分:2)

WebSockets怎么办?

修改。 HTTP keep-alive可能有帮助。

答案 1 :(得分:2)

由于HTTP是无状态的,因此您需要在客户端和服务器之间创建永久或持久的套接字连接。

这是一个用PHP,AJAX和Ruby后端编写的聊天应用程序。

Web Chat application main page,更具体地说是part about the socket server