2
votes

I'm actually trying to find the best way to write a simple XMPP server or find one that leaves a really small foot print. I only care about the core features of XMPP (statusing, messaging, group messaging) . Also learning about XMPP protocol at the moment, so please bear with me if i'm saying something that is naive.

So currently, open fire is being used in our application. It's really heavy and has a lot of features that aren't necessary for our needs.

I've looked at tigase which is another XMPP server that leaves a smaller footprint.

I also looked at apachi mia framework which contains or has an extension module (vysper - XMPP server). I've tried to google reviews on this when compared to other servers, but can't find that much information.

In general, I"m looking for the best way to implement a simple XMPP server either from scratch or from an already built library/framework in java which leaves a smaller foot print then open fire. Interested in getting more pro/cons with vysper in comparison to openfire and tigase as well.

Any advice appreciated, Thanks, D

1
So the question is "How to implement a simple XMPP server in java?"?Flow
Yeah, sorry if that wasn't clear. I want to create a simple XMPP server (handles status, multi-chat). I need this to work with XMPP clients like SPARK and others out there. I plan to bridge this server with another internal chat program. I need something that is light weight smaller and less complicated then open fire.darewreck
Then I suggest you edit your post and put the actual question in the titleFlow

1 Answers

5
votes

I can talk for Tigase only as I am Tigase team member. For basic XMPP features Tigase binaries take no more than 1.5MB and if necessary it could be reduced to something below 1MB. We run periodic tests with small memory and all the basic features work fine even if you run Tigase with 10MB of RAM, of course for no more then a few dozen online users.

I think this is quite small foot print. We put a lot of effort on optimizing and testing. It is also designed to easily integrate with other systems so this is the way to go :-) Of course I am biased towards Tigase which is understandable. Please wait for some more independent opinion.