当然我知道Ajax,但Ajax的问题是浏览器应经常轮询服务器以查找是否有新数据.这会增加服务器负载.
除了经常轮询服务器之外,还有更好的方法(甚至使用Ajax)吗?
我已经用javascript对服务器推送进行了一些研究,并且已经找到了普遍的共识,即我正在寻找的是"Comet"设计模式.在jQuery之上构建这个模式有什么好的实现吗?如果没有,这种模式是否有任何好的实现?无论这些问题的答案如何,从实施的角度来看,是否存在关于此模式的任何文档?
我正在考虑使用PHP后端实现实时聊天,但我在讨论彗星的网站上遇到了这个评论:
我的理解是,对于Comet来说,PHP是一种可怕的语言,因为Comet要求你保持对每个浏览器客户端的持久连接.使用mod_php这意味着为每个不完全扩展的客户端占用Apache全职儿童.我认识Comet的人大多使用Twisted Python,它可以处理数百或数千个同时连接.
这是真的?或者是可以配置的东西?
我是否需要传回任何HTTP标头告诉浏览器我的服务器不会立即关闭连接并显示为收到HTML?是否有必要让HTML逐步显示为flush()?
这种技术曾经用于聊天等事情,但我正在考虑将它用于COMET类型的应用程序.
我必须使用Comet在PHP中构建一个简单的聊天系统.
我不知道这个项目的最佳方法是什么.
使用什么是最好的技术(跨浏览器会很好),以及如何实现它?我可以使用哪些库已经有彗星支持.(我不想使用Bayeux协议)
我已经为聊天系统运行了PHP后端,但我需要一些关于客户端和服务器之间交互的想法.
谢谢大家.致以我的问候.