Transport clustering in jabberd2
The added value feature of clustering changes in jabberd2 is a possibility to multiplicate not only Session Manager component, but also components connected with XEP-0114 component protocol. Namely: Transports to other networks.
Component protocol connections differ from jabberd2 components that the hash used for selecting component instance to route to is computed using a ‘from’ address, [...]
Clustering for jabberd2
The largest problem for large jabberd2 deployments is a single-process, single-threaded Session Manager.
Being single-threaded means that it can process only one XMPP packet at a time. More importantly, when it waits for some data (from the storage mostly) it does not process any other packets.
One possible solution would be to rewrite the SM to be [...]
