Dima, IgniteScheduler provides functionality for scheduling jobs locally using UNIX cron-based syntax. Instance of GridScheduler is obtained from grid as follows: IgniteScheduler s = Ignition.ignite().scheduler();
Scheduler supports standard UNIX cron format with optional prefix of {n1, n2}, where n1 is delay of scheduling in seconds and n2 is the number of execution. Both parameters are optional. Here's an example of scheduling a closure that broadcasts a message to all nodes five times, once every minute, with initial delay of two seconds: Ignition.ignite().scheduler().scheduleLocal( SchedulerFuture<?> = Ignition.ignite().scheduler().scheduleLocal(new Callable<Object>() { @Override public Object call() throws IgniteCheckedException { ...... } }, "{2, 5} * * * * *" // 2 seconds delay with 5 executions only. ); On Wed, Jun 21, 2017 at 1:31 PM, Dmitriy Setrakyan <dsetrak...@apache.org> wrote: > Alexey, > > Can you remind what we use the schedule module in Ignite for? > > D. > > On Wed, Jun 21, 2017 at 7:26 AM, Alexey Kuznetsov <akuznet...@apache.org> > wrote: > > > Hi! > > > > 1) Cron4J is very old: > > Latest Cron4j 2.2.5 released: *28-Dec-2011 * > > Latest Quarz 2.3.0 released: *20-Apr-2017* > > > > 2) Not very friendly license: > > CronJ4 licensed under GNU LESSER GENERAL PUBLIC LICENSE > > Quartz is freely usable, licensed under the *Apache 2.0* license. > > > > So, if we replace Cron4J with Quartz we can move *ignite-schedule* > module > > from lgpl profile to main distribution. > > > > Any objections? > > > > If no, I will create JIRA issue and implement this change. > > > > -- > > Alexey Kuznetsov > > > -- Alexey Kuznetsov