What exactly is wrong with the approach you have now? Using a cron job is a pretty robust approach, since you don't have to worry about creating your own daemon that is reliable enough to run for months. I don't think any of the approaches discussed here will prevent you from needing to check if the directory has been updated, so it's really just a question of how often you check. If a 1 minute lag is acceptable, use cron and keep it simple.