OpenFire、Spark、Smack 介紹

OpenFire 是採用Java開發的基於XMPP(Jabber)協議,開源實時協作(RTC)服務器。

Smack 是用 Java編 寫的XMPP客戶端代碼庫,是 spark 的核心

開源界總是有許多有趣的東東,這三個合起來就是一個完整的XMPP IM 實現。

OpenFire ——服務器端

Spark——客戶端

Smack——XMPP 傳輸協議的實現

三者都是基於Java 語言的實現,其中XMPP是一個協議,協議是需要實現的,Smack起到的就是這樣的一個作用。


OpenFire 是基於XMPP 協議的IM 的服務器端的實現,雖然當兩個用戶連接後,可以通過點對點的方式來發送消息,但是用戶還是需要連接到服務器來獲取一些連接信息和通信信息的,所以服務器端是必須要實現的。

Spark 提供了客戶端一個基本的實現,並提出了一個很好的插件架構,這對於開發者來說不能不說是一個福音。我強烈建議基於插件方式來實現你新增加的功能,而不是去改它的源代碼,這樣有利於你項目架構,把原始項目的影響降到最低。

Smack 是一個XMPP 協議的Java 實現,提供一套可擴展的API,不過有些時候,你還是不得不使用自己定製發送的XML 文件內容的方式來實現自己的功能

 

三者之間的關係:


從上圖可知,Client 端和Server端都可以通過插件的方式來進行擴展,Smack是二者傳遞數據的媒介。


OpenFire官方

官方介紹: http://www.igniterealtime.org/index.jsp

官方下載: http://www.igniterealtime.org/downloads/index.jsp


本文轉載至:http://blog.csdn.net/ithomer/article/details/7192257


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章