I have a Bash script, currently run a couple times an hour from cron, that pulls data from an old Windows DB by rsync, converts it to SQL, and injects it into a MySQL DB for display in a LAMP-based app. (Make and Perl are also involved to minimize the number of tables touched and to clean up the SQL generated by Pxlib.) I'd like to add the ability to refresh the data immediately from the web app, but I don't want it to trample on the periodic script and corrupt the data. I figure the ideal way to do this is to run the script in a loop in its own process, waiting on a semaphore that times out at the refresh period, and poke the semaphore from the web app to have it run before the next periodic cycle. Are there existing frameworks to wrap this kind of thing in? Something that handles starting the loop at server startup, shutting it down at server halt, and handles the IPC between the web server and the service script.