我习惯了具有灵活排队配置可能性的 IBM i (AS/400) 批处理。我正在寻找类似的 Linux 批处理工具。
最重要的是一次从队列中取出一项作业并执行。之后,将扫描队列以查找更多条目。如果有的话,下一个任务将被取出来运行。
at -b
相对接近,但如果一个作业占用的资源太少以至于负载保持下降,更多的任务会并行执行,这是不希望的。
Run-parts 将是另一种选择,但它的行为过于静态,并且不会作为守护进程运行以在给定队列中查找新条目。我可以将其作为常规 cron 作业运行,但我需要自己处理要从队列中删除的作业。
我是否必须编写自己的代码或扩展 at 才能实现所需的功能,或者是否有可用的替代批处理排队机制?