I'm looking for sta开发者_运维百科ndards that are behind realtime web applications. I know about W3C Websockets API and IETF Websockets protocol, Bayeux protocol and Server-Sent Events standards. Are there any other standards for techniques like long-polling, callback-polling, Iframe streaming, htmlfile streaming, XHR streaming, multipart streaming, Direct Socket?
Long polling doesn't have a dedicated standard. It is effectively an implementation technique layered on top of existing standards like HTTP and XMLHttpRequest (which is standardized as W3C working drafts). The Wikipedia page is a pretty good reference.
XMPP standardizes a technique called BOSH which is also implemented as long-lived HTTP.
multipart/x-mixed-replace was implemented by Netscape but not IE, and is not a standard. The Push technology Wikipedia page is a good reference.
Hope these help.
If anyone is interested in a Java implementation I just wrote a sample app and a blog post about it. It uses Java, Maven, Comet, Bayeux, Spring. http://jaye.felipera.cloudbees.net/ http://geeks.aretotally.in/thinking-in-reverse-not-taking-orders-from-yo
I have found an interesting answer on quora (http://www.quora.com/What-are-the-standards-behind-realtime-web) :
The following protocols are core to the Realtime Web:
- HTTP protocol in general makes so much possible WebSockets protocol
- PubSubHubbub protocol
- Webhooks eXtensible Messaging and Presence Protocol (XMPP) & BOSH (http://xmpp.org/extensions/xep-0...)
- Activity Streams (as pointed out by Chris Saad)
- http-live-streaming / HTTP Long-Polling
精彩评论