(Migrated) Scheduler revamp

(This message has been automatically imported from the retired mailing list)

Hello,

as part of the ticket 258 …

https://github.com/zatosource/zato/issues/258

… the scheduler has been rewritten from scratch. If you already run
scheduler jobs you don’t need to change anything, this is only an
internal change.

What sets the new one from what we had before is:

  • Improved performance with dozens or hundreds of jobs
  • More cron expressions available

Previously, it wasn’t really possible to run a hundred jobs a second
because each one meant a real OS thread being spawned. Now each job is a
greenlet meaning they are very cheap to create.

As for cron - the underlying library for parsing cron expressions is now
crontab …

https://github.com/josiahcarlson/parse-crontab/

… and crontab can parse much more expressions than what was available
up until now.