/** * Method grid-enabled with {@link Gridify} annotation and will be executed on the grid. Simply * prints out the argument passed in and returns its length. * * <p>Note that in this case instead of using default task, we provide our own task which will * split the passed in string into separate words to be printed on remote nodes. The timeout * parameter tells grid that method execution should fail if no result is received in 5 seconds. * * @param phrase Phrase string to print. * @return Number of characters in the phrase. */ @Gridify(taskClass = GridifyHelloWorldTask.class, timeout = 5000) public static int sayIt(String phrase) { // Simply print out the argument. X.println(">>>"); X.println(">>> Printing '" + phrase + "' on this node from grid-enabled method."); X.println(">>>"); return phrase.length(); }
/** * Execute {@code HelloWorld} example grid-enabled with {@code Gridify} annotation. * * @param args Command line arguments, none required but if provided first one should point to the * Spring XML configuration file. See {@code "examples/config/"} for configuration file * examples. * @throws GridException If example execution failed. */ public static void main(String[] args) throws GridException { if (args.length == 0) { G.start(); } else { G.start(args[0]); } try { // Simple example stateful instance to demonstrate // how object state can be handled with grid-enabled methods. GridifyHelloWorld helloWorld = new GridifyHelloWorld(); // Set simple state. helloWorld.setState("Hello World"); // This method is grid-enabled and // will be executed on remote grid nodes. int phraseLen = helloWorld.sayIt(); X.println(">>>"); X.println(">>> Finished executing Gridify \"Hello World\" stateful example."); X.println(">>> Total number of characters in the phrase is '" + phraseLen + "'."); X.println(">>> You should see print out of 'Hello' on one node and 'World' on another node."); X.println(">>> Check all nodes for output (this node is also part of the grid)."); X.println(">>>"); } finally { G.stop(true); } }
/** * Execute {@code HelloWorld} example grid-enabled with {@code Gridify} annotation. * * @param args Command line arguments, none required but if provided first one should point to the * Spring XML configuration file. See {@code "examples/config/"} for configuration file * examples. * @throws GridException If example execution failed. */ public static void main(String[] args) throws GridException { if (args.length == 0) { G.start(); } else { G.start(args[0]); } try { // This method will be executed on a remote grid nodes. int phraseLen = sayIt("Hello World"); X.println(">>>"); X.println(">>> Finished executing Gridify \"Hello World\" example with custom task."); X.println(">>> Total number of characters in the phrase is '" + phraseLen + "'."); X.println(">>> You should see print out of 'Hello' on one node and 'World' on another node."); X.println(">>> Check all nodes for output (this node is also part of the grid)."); X.println(">>>"); } finally { G.stop(true); } }
/** * Starts up grid and checks all provided values for prime. * * @param args Command line arguments, none required but if provided first one should point to the * Spring XML configuration file. See {@code "examples/config/"} for configuration file * examples. * @throws GridException If example execution failed. */ public static void main(String[] args) throws GridException { // Starts grid. Grid grid = args.length == 0 ? G.start() : G.start(args[0]); // Values we want to check for prime. long[] checkVals = {32452841, 32452843, 32452847, 32452849, 236887699, 217645199}; X.println(">>>"); X.println( ">>> Starting to check the following numbers for primes: " + Arrays.toString(checkVals)); try { long start = System.currentTimeMillis(); for (long checkVal : checkVals) { // This method will be executed on the Grid as it is // annotated with @Gridify annotation. Long divisor = GridPrimeChecker.checkPrime(checkVal, 2, checkVal); // If divisor is null, then the number is prime. if (divisor == null) { X.println("Value '" + checkVal + "'is a prime number."); } else { X.println("Value '" + checkVal + "' is divisible by '" + divisor + '\''); } } long totalTime = System.currentTimeMillis() - start; X.println(">>> Total time to calculate all primes (milliseconds): " + totalTime); X.println(">>>"); } finally { // Stops grid. G.stop(grid.name(), true); } }