Allows the execution of tasks periodically or on-demand (manually triggered, usually by another system)
Job: The action to execute.
CronJob: It is the context of the job and contains the configuration required by the job. It stores the status of the job.
Trigger: It defines how frequently the job is going to be run.
A cronjob may run in only one node of the cluster.
A cronjob can be started using ant runcronjob.
A cronjob may run asynchronously or synchronously.
The cronjob isn't removed from the database when it completes.
If you need to prevent two jobs from running simultaneously, you would have to create your own locking mechanism to avoid this situation.
Each execution of a job generates a log which it is saved in the cronjob.