While working on a project recently, I needed to write a handful of scheduled tasks to collect or manipulate data. Each task would share some common elements, like connections to MongoDB or RabbitMQ servers, among other things. Ultimately I wanted a single connection to each external service with the tasks using them as needed. Some jobs would be scheduled to run every five minutes so I didn't want them having to connect and disconnect that often. Let's see...
How about using a small web server? All the server has to do is expose API routes on localhost. The logic for various tasks can be organized in the route handler functions. Each Cron job then becomes a simple shell script that curls a local URL. Sounds pretty good to me.
A full example of how I put this together is on Github: https://github.com/projectweekend/Holly-Jobs. Everything for the web server is found in the /app directory and any script called by a Cron job can be found in /cron.