Implement a ClusteringStrategy
The current clustering strategy doesn't fit my needs, thus I'll implement my own, however I've a few questions for anybody who already tried or did implement a clustering strategy in tigase...
How does the strategy interact with the server ?
Is there anything I missed or is it just filtering where packets are forwarded ?
How does the actual clustering work ? If a node receive a message from another node, will it go to the same process as if it was received from a local client ? or is there a "shortcut" because it's a trusted source.
Finally, if I change anything to clustering, what kind of impact there would be on plugins ? Will I have to rewrite the presence plugin, etc, etc
- Clustering is kind of filter indeed. It decides where (which cluster node) the packet should go for further processing.
- The packet goes first through the clustering strategy which decides where the packet should be processed, then it is either processed locally or forwarded to one or more cluster nodes, or both, it can be processed both locally and on other nodes.
- The clustering strategy was designed to be transparent to plugins, there should be no impact
We do have a different clustering strategy available as well as a commercial module. It is designed and tested and put into production on a very large installation of over 1mln online users. If you are interested in this, please use the contact form to send me a message.