Comet4J(Comet for Java)是一個純粹基於AJAX(XMLHTTPRequest)的服務器推送框架,消息以JSON方式傳遞,具備長輪詢、長連接、自動選擇三種工作模式。
功能特性
- 推送消息廣播。
- 推送定向消息。
- 提供連接上線前、上線、下線前、下線、發送消息等多種可處理事件。
- 消息緩存機制,確保長輪詢工作模式下不丟失消息。
- 客戶端正常下線,服務端可立即感知。
- 客戶端異常停止工作,服務端可定時檢查並感知。
- 以註冊通道應用的方式,讓開發者對框架功能進行擴展,實現自己的應用。
框架特性
- 獨立小巧,不依賴於第三方包。
- 與應用緊密集成,無需獨立應用或服務器。
- 與Session無關的連接機制,爲開發人員提供最大程度的功能可控性。
- 面向事件編程,客戶端與服務器端均爲事件驅動開發模式,提供了良好的可擴展性機制。
- 各項性能參數均可配置。
- 支持多種主流瀏覽器,並支持Air應用環境。
服務器支持情況
Tomcat6、Tomcat7
瀏覽器支持情況
支持XMLHTTPRequest對象的瀏覽器均可支持長輪詢工作模式,但不一定能夠支持長連接。
瀏覽器/平臺 | 版本 | 長輪詢 | 長連接 |
Internet Explorer | 6,7,8,9 | √ | X |
FireFox | 3.0+(更底版本未知) | √ | √ |
Chrome | 7.0+(更底版本未知) | √ | √ |
Safari | 5+(更底版本未知) | √ | √ |
Opera | 11.10+(更底版本未知) | √ | X |
Air | 1.5+(更底版本未知) | √ | √ |
IOS(Iphone/Ipad) | 3.1+(更底版本未知) | √ | √ |
Android | 未測試 | 未知 | 未知 |
BlackBerry | 未測試 | 未知 | 未知 |