Is there any official guide for developing plugins with clustering enbaled? Are there any special considerations?
A more specific question - I keep a large data structure that gets initialized with my plugin and lives throughout the life of the plugin (and the server for that matter). Whenever a packet is handled by the plugin it reads or writes some data to that “global” object. How do I go about making this data available in other nodes?
As far as I know, there’s no documentation on this feature. You’re actually quite free to pick whatever method you prefer. Typically, you’d want to create a shared cache, such as the ones provided by Oracle Coherence. Suchs a cache is essentially a Map, of which the data is available to every instance on the cluster. You can use Oracle Coherence based classes, but you’re free to include another framework (EHCache would make a good alternative, for example).