-
Notifications
You must be signed in to change notification settings - Fork 218
Description
Currently with tasks, we are having to manage the execution of their schedules external to CF. Additionally, we package those tasks with a parent application whose instance(s) runs 24/7/365. We prefer our architecture to be isolated by function and purpose...so if there is a task (something batchy) it should be deployed independently. This is in contrast to the current design of tasks which require a "parent" application. If I only run a task once a week, why should the parent app instance run that entire time listening? We would be forced to externally schedule the start and stop of the parent app AND separately the execution of the task. Yuk if I understand this correctly. Today we isolate the "batchy" functionality in its own application and use something like Spring Tasks to kick off the work. But again...it run 24/7/365 when it doesnt need to.
I am wondering if there has been any consideration for accepting an application push with a cron-style schedule? Essentially, the app is a task but it can be scheduled to spin up on its own. Once its done, the container is killed just like with a CF task today.
Maybe something like:
cf push mySimpleScheduledApp -p target/myApp.jar --schedule "0 * * * *"
Otherwise, are there any other recommendations or thoughts on approaching running batch/scheduled work loads on CF?