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 <[email protected]>
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 <[email protected]>
> 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