I wrote Gaspar for this purpose. It's basically a wrapper around rufus with some process control and redis locks per job so that you can run a schedule in any number of processes and it'll "just work". The nice thing about this setup is that it doesn't require booting the whole environment for each job, which means that frequent jobs are easy.<p><a href="https://github.com/mashable/gaspar" rel="nofollow">https://github.com/mashable/gaspar</a>