我听说我可以使用Comet作为服务器推送技术和我的Ajax代码来提高我的Web应用程序的性能.
这款Comet技术有多成熟?
是否所有Web服务器,编程语言和浏览器都支持它?
使用Comet有什么缺点?
它已经成熟,但我认为你应该把它当作技术而不是技术.
据我所知,所有Web服务器都支持它,但如果您正在构建一个彗星应用程序,则需要研究和配置您的特定Web服务器,因为对资源的需求有点不同.具体来说,与服务器的同步打开连接将会更多.在编程语言支持方面,如果您选择的服务器语言具有任何类型的阻塞或等待机制,则可以支持服务器推送.所有浏览器也支持它,从浏览器的角度来看,这只是一个需要很长时间才能返回的http(s)连接.
在浏览器世界中存在一些缺点,最大的可能是某些浏览器将特定URL的打开连接数限制为两个.因此,如果您有一个服务器阻止连接打开等待某些推送数据,那么您只能使用一个可用于浏览器的连接来从服务器获取数据.这可以通过将资源分布在几个二级域中来缓解,以允许浏览器打开更多连接.