这是我想要延迟作业运行时的简单理想情况:
- 当第一个应用程序服务器(无论是通过 mongrel 还是乘客)启动时,它会启动我延迟的工作人员。
- 当最后一个运行的应用程序服务器终止时,它会杀死所有延迟的作业工作者。
第一部分(开始)是可行的,尽管我不确定“正确”或“最佳”的方法是什么。只需对延迟作业启动进行有条件的(在尚未运行的进程上)系统调用?
第二部分(终止)——好吧,我不确定它是否可行。绝对不知道如何实现这种效果。
有什么想法或想法吗?
是否有另一种您认为最好的方式来开始/结束延迟工作的工作人员?
附带问题:上面的主要问题是针对生产环境的——一个更困难的情况,因为有多个应用服务器同时运行。在开发环境中(保证只有一个应用程序服务器,而不是它们的集群)中是否可以通过派生一个子进程来运行延迟的作业工作者,这些工作者总是在父进程终止时终止?我该怎么做呢?