I'm used to IBM i (AS/400) batch processing with flexible queueing configuration possibilities. I'm searching a similar facility for Linux Batch processing.
Most important is that one job at a time being taken from the queue and executed. After that, the queue is scanned for more entries. If there are any, the next task will be fetched to run.
at -b comes relatively close but if a job takes so little resources that the load stays down, more tasks get executed in parallel which is not desired.
Run-parts would be another option but it is too static in behavior and doesn't run as a daemon to look for new entries in a given queue. I could run it as a regular cron job but I need to take care of jobs to delete from the queue myself.
Do I have to code my own or extend at to achieve my desired functionality or are there alternate batch queueing mechanisms available?