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. 服务器