As you should be more than familiar with jobs by now, you might have implemented them in your own application. For example, take clean up jobs, which are weekly or hourly jobs that clear leftover or unneeded data that has accumulated over time out of the database. You've developed your application as usual, added this neat clean up job, and deployed it to a multi-node system. Now your job runs on every node at the same time, which is most likely not what you wanted. This wastes application resources or might even lead to lock problems, as many systems try to access the same database resources at the same time.
In this example the standard cache functionality will be used to overcome this problem.
The source code of the example is available at examples/chapter7/distributed-jobs
.