public static void main(String[] args) throws Exception { HazelcastInstance hz = Hazelcast.newHazelcastInstance(); Map<String, String> map = hz.getMap("map"); for (int i = 0; i < 10; i++) { map.put(UUID.randomUUID().toString(), ""); } IExecutorService executor = hz.getExecutorService("executor"); for (String key : map.keySet()) { executor.executeOnKeyOwner(new VerifyTask(key), key); } } }
HazelcastInstance hz = Hazelcast.newHazelcastInstance(); Map<Integer, String> map = hz.getMap("yourMap"); for (int key = 0; key < 100; key++) map.put(key, "someValue"); IExecutorService executor = hz.getExecutorService("executor"); for (Integer key : map.keySet()) executor.executeOnKeyOwner(new YourBigTask(), key);
public static void main(String[] args) { // Start the Embedded Hazelcast Cluster Member. HazelcastInstance hz1 = Hazelcast.newHazelcastInstance(); // Start a Second Embedded Hazelcast Cluster Member HazelcastInstance hz2 = Hazelcast.newHazelcastInstance(); // Get the Distributed Executor Service IExecutorService ex = hz1.getExecutorService("my-distributed-executor"); // Submit the MessagePrinter Runnable to a random Hazelcast Cluster Member ex.submit(new MessagePrinter("message to any node")); // Get the first Hazelcast Cluster Member Member firstMember = hz1.getCluster().getMembers().iterator().next(); // Submit the MessagePrinter Runnable to the first Hazelcast Cluster Member ex.executeOnMember(new MessagePrinter("message to very first member of the cluster"), firstMember); // Submit the MessagePrinter Runnable to all Hazelcast Cluster Members ex.executeOnAllMembers(new MessagePrinter("message to all members in the cluster")); // Submit the MessagePrinter Runnable to the Hazelcast Cluster Member owning the key called "key" ex.executeOnKeyOwner(new MessagePrinter("message to the member that owns the following key"), "key"); // Shutdown this Hazelcast Cluster Member hz1.shutdown(); // Shutdown this Hazelcast Cluster Member hz2.shutdown(); }
public static void main(String[] args) { // Enable Code Deployment from this Client classpath to the Cluster Members classpath // User Code Deployment needs to be enabled on the Cluster Members as well. ClientConfig config = new ClientConfig(); ClientUserCodeDeploymentConfig userCodeDeploymentConfig = config.getUserCodeDeploymentConfig(); userCodeDeploymentConfig.setEnabled(true); userCodeDeploymentConfig.addClass(ExecutorServiceSample.MessagePrinter.class); // Start the Hazelcast Client and connect to an already running Hazelcast Cluster on 127.0.0.1 HazelcastInstance hz = HazelcastClient.newHazelcastClient(config); // Get the Distributed Executor Service IExecutorService ex = hz.getExecutorService("my-distributed-executor"); // Submit the MessagePrinter Runnable to a random Hazelcast Cluster Member ex.submit(new MessagePrinter("message to any node")); // Get the first Hazelcast Cluster Member Member firstMember = hz.getCluster().getMembers().iterator().next(); // Submit the MessagePrinter Runnable to the first Hazelcast Cluster Member ex.executeOnMember(new MessagePrinter("message to very first member of the cluster"), firstMember); // Submit the MessagePrinter Runnable to all Hazelcast Cluster Members ex.executeOnAllMembers(new MessagePrinter("message to all members in the cluster")); // Submit the MessagePrinter Runnable to the Hazelcast Cluster Member owning the key called "key" ex.executeOnKeyOwner(new MessagePrinter("message to the member that owns the following key"), "key"); // Shutdown this Hazelcast Client hz.shutdown(); } }