You can use the scripting feature of the Management Center to execute scripts on the cluster. Note that it’s disabled by default and you need to enable it in your cluster’s configuration. Please see the Toggle Scripting Support section in the Hazelcast IMDG Reference Manual for details. Members list shows whether scripting is enabled or disabled for each member.
To use this feature, click on the Scripting menu item on the left panel. Once selected, the scripting feature opens as shown below.
There are Save and Delete buttons on the top right of the scripting editor. To save your scripts, press the Save button after you type a name for your script into the field next to this button. The scripts you saved are listed in the Saved Scripts part of the window, located at the bottom right of the page. Click on a saved script from this list to execute or edit it. If you want to remove a script that you wrote and saved before, select it from this list and press the Delete button.
In the scripting engine you have a
HazelcastInstance bonded to a variable
hazelcast. You can invoke any method that
HazelcastInstance has via
var name = hazelcast.getName(); var node = hazelcast.getCluster().getLocalMember(); var employees = hazelcast.getMap("employees"); employees.put("1","John Doe"); employees.get("1"); // will return "John Doe"
IMDG members use the
javax.script.ScriptEngineManager API for the execution of the script.
corresponding scripting engine in the classpath of that member. Here is an example of
Maven configuration for several scripting engines:
<dependencies> <!-- Groovy --> <dependency> <groupId>org.codehaus.groovy</groupId> <artifactId>groovy-jsr223</artifactId> <version>2.5.6</version> </dependency> <!-- Ruby (JRuby) --> <dependency> <groupId>org.mule.modules</groupId> <artifactId>mule-module-scripting-jruby</artifactId> <version>3.9.0</version> </dependency> <dependency> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> <version>2.10.2</version> </dependency> <!-- Python (Jython) --> <dependency> <groupId>org.python</groupId> <artifactId>jython-standalone</artifactId> <version>2.7.1</version> </dependency> </dependencies>