1. Openfire (Wildfire) 3.xhtml
底層通信採用的mina框架,minak框架其實性能通常,netty早已經超越它,雖然最初都是Doug Lea寫的。3.4版本以後支持集羣,單臺服務器測試最大支持30萬用戶併發,服務器配置(服務器是Dell R710, 64G內存 16核CPU,15000轉硬盤),缺點是大規模併發時集羣效果不是很好。
性能優化學習:http://blog.csdn.net/smm11230704/article/details/7468010
受權: GPL or 商用
操做系統平臺:全部(使用Java開發)
XMPP Jabber 協議實現狀況:98%
Tim 評價:
安裝和使用很是簡單,安裝後進入Web界面進行2~3分鐘的配置全部的東西都設好了。使用Java語言開發,在目前Java開發人員處處普及的狀況下進行維護和擴展的成本很是低。在個人測試中加上 Connection Manager 的狀況下單臺服務器可支持 30 萬併發用戶。缺點是目前還不支持Cluster。若是企業內部部署IM使用 Wildfire + Spark 是最佳的組合。
見:http://hi.baidu.com/jabber/blog/Category/Wildfire
2. ejabberd
受權: GPL
操做系統平臺:Linux, Windows, MaCOS X 等
XMPP Jabber 協議實現狀況:91%
Tim 評價:
Ejabberd目前是可擴展性最好的一種Jabber/XMPP服務器,支持分佈多個服務器,而且具備容錯處理,單臺服務器失效不影響整個Cluster運做。
顧慮就是它採用一種你們都沒聽過的語言Erlang開發,因此不少人可能會象我同樣由於這個緣由放棄了它。
3. Jabberd 2.x
受權: GPL
操做系統平臺:主要是 Linux, (Windows 也支持,但不知道性能怎樣)
XMPP Jabber 協議實現狀況:76%
Tim 評價:
自從jabber.org改用ejabberd以後,Jabberd一直都在走下坡路。擴展性比不上ejabberd, 易用性比不上 Wildfire,惟一的優點是使用C開發,若是你堅持要用C開發,那麼仍是選擇jabberd吧。
4. Jabberd 1.x
受權: GPL
操做系統平臺:主要是 Linux, (Windows 也支持,但不知道性能怎樣)
XMPP Jabber 協議實現狀況:45%
Tim 評價:
在幾年前 jabberd 就是 Jabber 的代名詞,至今不少 Jabber 文檔仍然介紹的是 Jabber 1.4,
在我之前寫的《Jabber 服務器佔有率比較》中仍然排名第一。可是它不少新的規範都不支持,相信大部分用戶都將轉向新的服務器。
見:http://hi.baidu.Com/jabber/blog/item/7d25bb199f31a44542a9ad02.html
5. 後起之秀 DJabberd
受權: open sourCe
操做系統平臺:主要是 Linux, (Perl寫的,其餘平臺應該也支持)
XMPP Jabber 協議實現狀況:N/A
Tim 評價:
djabberd 使用 epoll 技術,理論上單臺服務器能夠支持更多用戶。Djabberd目前主要應用在LiveJournal上,大部分XMPP協議都支持,穩定性也不用置疑。可是由於推出時間尚短,不少細節功能可能須要時間慢慢完善。
djabberd介紹見:http://hi.baidu.com/jabber/blog/Category/Djabberd
性能優化
6. tigase:
1)底層通信是本身寫的一個NIO通信框架, 最高併發鏈接可達到單機50w,支持集羣(能夠根據須要進行水平擴展),我的感受這個比較靠譜。
部署學習:http://xiao9.iteye.com/blog/1488070
2).Tsung負載測試Tigase:http://linyu19872008.iteye.com/blog/1605707
3)典型案例:Zoosk,是一個具備5000萬會員的浪漫的社交約會網站
4)詳解Zoosk千萬用戶實時通訊背後的開源技術:
http://www.csdn.net/article/2012-09-10/2809790-zoosk-the-engineering-behind-real-time
5)缺點:集羣方式複雜--可是tigase 做者維護很活躍,集羣測試結果可以支撐比較大的容量,這是吸引人的地方。但通過實際生產運營狀況來看,因爲其集羣方案實現的複雜性,以及單節點容量的有限,對支撐到 50 萬用戶在集羣節點上可能沒有信心,因此在到達 50 萬用戶以前,本身要準備替代方案。
6)擴展:能夠建立一些自定義的擴展,來處理特定的業務邏輯。
7)tigase官方網站吸引人的地方:http://www.tigase.org/
Cluster with over 1mln online users.-- 集羣支持一億個用戶在併發
500k online users on a single machine.--50萬個用戶併發單機
Great at XMPP service sharding.
Running happily with 10MB of RAM.
Long list of supported features.
Scripting support for all major languages.
All tests results are publicly available.
Very flexible and extensible API.
Monitoring via HTTP, SNMP, JMX, XMPP. 服務器