`
ahua186186
  • 浏览: 562048 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

XMPP服务器的性能分析和优化

 
阅读更多
常用的的XMPP服务器:
1.openfire:底层通讯采用的mina框架,minak框架其实性能一般,netty早已经超越它,虽然最初都是Doug Lea写的。3.4版本之后支持集群,单台服务器测试最大支持30万用户并发,服务器配置(服务器是Dell R710, 64G内存 16核CPU,15000转硬盘),缺点是大规模并发时集群效果不是很好。
性能优化学习:http://blog.csdn.net/smm11230704/article/details/7468010

2.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.
分享到:
评论
1 楼 bluky999 2014-01-21  
Tigase 扩展性和集群方面确实比openfire好一些,不过上手门槛比Openfire少高,openfire在后台管理等方面比较友好。

相关推荐

    XMPP服务器的性能分析跟优化.pdf

    在进行XMPP服务器性能分析和优化时,以下几点是关键: 1. **负载测试**:使用如Tsung这样的工具进行压力测试,模拟大量用户并发连接,以评估服务器在高负载下的表现。 2. **资源优化**:合理分配硬件资源,如内存、...

    XMPP服务器的性能分析跟优化.docx

    本文将深入探讨XMPP服务器的性能分析和优化,特别关注两个常用的XMPP服务器——Openfire和Tigase。 首先,Openfire是基于Mina框架构建的,虽然早期与Netty有相同的设计基础,但现在Netty在性能方面已明显超越Mina。...

    一个简单的xmpp服务器实现

    通过分析sptalk-master这个项目,我们可能能了解到一个XMPP服务器从无到有的构建过程,包括核心模块的设计、协议的解析和实现、以及可能的性能优化策略。如果该项目提供了详细的文档和源代码,那么对于学习XMPP协议...

    xmpp服务器端介绍

    4. 测试和优化:完成基本配置后,进行测试确保服务器正常运行,并根据需要进行性能优化。 在实际开发中,XMPP服务器通常与客户端库配合使用,例如Smack for Java或Strophe.js for JavaScript,以便在应用程序中实现...

    JAVA实现XMPP客户端和服务器

    同时,为了保证软件的质量,还需要进行性能优化、错误处理以及安全性考量。 总结,使用Java实现XMPP客户端和服务器,涉及到的知识点包括XMPP协议原理、Java编程、网络通信、XML处理、服务器部署以及客户端UI设计。...

    xmpp服务器和android客户端源码

    在这个“xmpp服务器和android客户端源码”项目中,我们涉及到了XMPP服务器的搭建与Android客户端应用的开发。接下来,我将详细讲解XMPP协议的核心概念、服务器端的实现以及Android客户端的集成。 1. **XMPP核心概念...

    基于Actor模型的高性能分布式XMPP服务器.pdf

    它们相互关联,共同构成了一个高性能分布式XMPP服务器的理论和技术基础。这样的技术发展和应用,不仅在移动云计算领域具有广阔的应用前景,还对提升云计算时代下的用户体验有着深远的意义。 总结来说,基于Actor...

    iOS xmpp ejabberd服务器

    ejabberd是一款开源的XMPP服务器,支持多种平台,包括iOS。它提供了强大的可扩展性和高可用性,能够处理大量的并发用户,并且支持多种安全特性,如SSL/TLS加密,确保通信的安全性。ejabberd-2.1.11-osx-installer....

    Go-jackal一个使用Go编写的XMPP服务器

    7. **性能优化**:利用Go的并发模型,有效利用硬件资源,提高处理速度。 在部署和配置方面,Go-jackal通常会提供一个配置文件,允许管理员自定义服务器设置,如端口、域名、日志级别等。此外,由于其轻量级的特性,...

    openfire为服务器的XMPP的即时通信样例

    6. **安全与性能优化**: - 使用Proguard或R8对Android应用进行代码混淆,提高安全性。 - 考虑使用Push Notification服务(如Firebase Cloud Messaging)来节省服务器资源,提高消息推送效率。 - 调整Openfire...

    xmpp Qt源码包

    通过以上步骤,你可以使用Qt和qxmpp库成功地搭建一个XMPP服务器。记得在开发过程中遵循良好的编程实践,确保代码的可读性和可维护性。同时,保持对XMPP协议最新标准的关注,以便及时更新你的服务器实现。

    android消息推送 客户端与服务器端(XMPP协议)

    在Android应用开发中,消息推送是一项关键功能,它能让服务器实时地向客户端发送通知或数据,提高用户体验并增强...在整个过程中,安全性和性能优化是至关重要的,确保了消息的准确、及时传递,并提供了稳定的服务。

    XMPP消息推送Demo【服务器+客户端】

    此外,客户端代码中还会涉及到错误处理和日志记录,以便调试和优化推送服务的性能。 在实现XMPP消息推送的过程中,开发者需要对以下几个关键概念有深入理解: 1. **连接管理**:客户端需要建立并维护一个持久的TCP...

    xmpp demo

    在这个“xmpp demo”项目中,我们关注的是如何在Android平台上利用XMPP实现单聊功能,并且需要自行搭建服务器环境,这里推荐使用Openfire作为XMPP服务器,Spark作为客户端工具进行辅助配置和测试。 首先,让我们...

    Android 基于XMPP协议IM聊天实现(客户端+服务端) 源码

    在Android平台上,我们通常使用诸如Smack或XMPPTCPConnection这样的库来处理与XMPP服务器的连接和数据交换。 1. **客户端实现**: Android客户端需要实现以下功能: - 用户注册和登录:客户端需要能够创建新用户...

    xmpp仿qq完整iOS项目

    10. **性能优化**:为了提供良好的用户体验,项目可能还涉及到连接性能优化,如心跳机制、消息缓存、离线消息处理等。 要使用这个项目,你需要了解XMPP的基本概念,熟悉iOS开发环境,能够设置和配置XMPP服务器,并...

    android XMPP openfire

    Openfire是XMPP服务器的一个实现,用Java编写,提供了实时、双向的通信能力。在这个场景中,我们主要探讨如何在Android应用中集成XMPP并使用Openfire作为后台服务器。 首先,让我们了解XMPP。XMPP是一种基于XML的...

    IM 基于XMPP协议

    另外,性能优化也是必要的,比如消息的批量发送和接收,以及合理的资源管理,以降低网络延迟和提高用户体验。 总之,基于XMPP协议的即时通信应用在iOS平台上具有很高的可定制性,能够实现丰富的社交功能。开发者...

Global site tag (gtag.js) - Google Analytics