[jdev] Missing XMPP Library, Server, and Client

Elvir Bahtijaragic elvir at bahtech.com
Wed Aug 27 01:50:55 UTC 2014


Hi Waqas,


Actually the project was added about 3 months ago (https://github.com/Kixeye/kixmpp/graphs/commit-activity).


This project has an interesting history. Initially it started as an efficient load testing client for testing Openfire - we are able to simulate 15000 clients on a xlarge instance on AWS. Other XMPP clients were unable to handle a large number of XMPP clients on a single instance, i.e. Smack had tons of memory leaks and Tigase was extremely inefficient in processing stanzas. Soon after load testing Openfire we realized that it performs extremely poorly under load and is completely unstable in a clustered environment. So we dropped Openfire and implemented our own XMPP server - using high-performance computing design patterns. Our requirement was to reach 500,000 simulated chatting clients - but we never actually hit a limit in our load tests. Based on our load testing parameters: a million simulated clients caused the server to output 230,000 message stanzas per second with a load average of 6 on a 32 core box using only 30% memory on average.


Thanks! We will add more documentation soon. Currently it's meant to be used as a library and enable any Java application to embed a XMPP client or XMPP server.


Regards,

Elvir B.


________________________________
From: JDev <jdev-bounces at jabber.org> on behalf of Waqas Hussain <waqas20 at gmail.com>
Sent: Tuesday, August 26, 2014 6:11 PM
To: Jabber/XMPP software development list
Subject: Re: [jdev] Missing XMPP Library, Server, and Client

On Mon, Aug 25, 2014 at 2:31 PM, Elvir Bahtijaragic <elvir at bahtech.com<mailto:elvir at bahtech.com>> wrote:
Hello,

You guys are missing a library, server, and client XMPP implementation called KIXMPP (https://github.com/Kixeye/kixmpp). It is a high-performance implementation that supports clustering - it has been load tested to support 500k users per node.

Cheers!
Elvir B.


I see the project was added to GitHub last week. I'm curious about the history of the project, how it's being used, and how it compares to existing projects. Are there any plans to add more documentation or articles?

And congratulations to the authors on building this and releasing it. Building an XMPP server from scratch is not trivial!

--
Waqas Hussain

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.jabber.org/jdev/attachments/20140827/fe011157/attachment.html>


More information about the JDev mailing list