powered by Jive Software

How does the new clustering work?

I’m trying to test the new Hazelcast clustering plugin, but I could use a few pointers about how it’s supposed to work.

I’d expect if the node I am connected to goes down, I will still see the MUC room after reconnecting. Would this work for both persistent and not persistent rooms? If it works for persistent room, how does it do it? Do I need to point all nodes to a single DB instance?

Yes, all cluster nodes will need to share the same DB configuration (which can itself also can be clustered). I have not personally used the MUC module, but based on the implementation it appears to support clustering. There are a number of cross-cluster events/tasks defined to manage MUC rooms, occupants, presence, etc., to keep the cluster nodes in sync with each other. When a node goes down, the client should simply reconnect (via a load balancer) to another node and continue the existing session(s).

Ok then, if there’s a single DB, then I guess it must work for but persistent and non-persistent MUC rooms. I will have to test this and, if possible pubsub as well. Pubsub is a bit trickier since no IM clients can publish, but I’ll see what I can come up with.

Pubsub is better tested than anything else right now, with respect to the new clustering plugin.

That’s reassuring, but I still have to come up with numbers showing how muh better clustering is compared to a single node installation.