I am configuring an ejabberd xmpp server for remote streaming of real-time graph data. The implementation is successful, but now a lot of performance issues are cropping up.
My requirement is to send around 3000 messages per minute into a mobile network through ejabberd-xmpp and receive it in a desktop application without any considerable delay.
I have altered traffic_shapers in the ejabberd.yml configuration file to very large values and have modified a lot of other traffic limitations and yet a large amount of buffering is happening on the desktop side when tested in low bandwidth.
So, if I am positive that my configuration is correct, what all extensions should be used?
In the time I have researched I have found that the following XEP's can be of help:
- Stream Compression(XEP-138) http://xmpp.org/extensions/xep-0138.html
- Jingle ICE-UDP Transport Method(XEP-176) http://xmpp.org/extensions/xep-0176.html
- Bidirectional-streams Over Synchronous HTTP (BOSH)(XEP-124) http://xmpp.org/extensions/xep-0124.html
- XMPP Over BOSH(XEP-206) http://xmpp.org/extensions/xep-0206.html
- Stream Management(XEP-198) http://xmpp.org/extensions/xep-0198.html
But all the research has only increased the number of doubts:
-> If I am to implement any of these XEP's, then what all changes to the configuration have to be made?
-> How will I have to alter my XML stanza accordingly? The XEP documentations are surprisingly inadequate for a rookie.
-> What is the difference between Stream Management and Stream Compression?
-> What is the difference between XMPP Over BOSH and Bidirectional-streams Over Synchronous HTTP?
-> How to implement BOSH? I am using port number 5222 now, what all changes to my project will come if I use port 5280? Where all should I reflect these changes?
-> If I am to combine any two extensions, will it only increase the speed issue or will it be in my favour?
Please, if anybody can help?
Did you find any answers to
Did you find any answers to your questions?
I'm experiencing issues with low bandwidth.