如何检测传入的聊天消息?

Hri*_*sto 1 php mysql ajax chat ajax-polling

我正在使用PHP,AJAX,MySQL数据库和大量jQuery来构建基于Web的聊天系统(类似于Facebook Chat).我坚持如何"倾听"即将进行的聊天......何时知道有人试图与我聊天......并且知道这是一个新的聊天,而不是现有的聊天.

现在,我正在轮询以查看数据库表中是否有新的插入,但它似乎效率很低......服务器的开销很大.

有没有办法接收通知,例如,在MySQL数据库的表中插入一行,以便不是经常轮询,我可以通知,然后去看插入什么?

如果有更好,更有效的方式来创建这种一对一的聊天关系,请给我一些建议.

谢谢,Hristo

Roy*_*ang 5

您必须使用轮询,但您可以使用一种名为Comet的技术,该技术涉及长轮询,即发送一个将由服务器保留的ajax请求,直到聊天请求进入.

http://en.wikipedia.org/wiki/Comet_(programming))