假设我有两个预定进程:A 和 B。
鉴于 B 不应该在 A 完成之前运行,我该如何优雅地强制执行这种依赖关系?
已考虑的方法:
完成后有一个时间表 B。如果由于某种原因 A 失败,这具有 B 永远不会被安排的缺点。
当 B 运行时,让它 ping A 以查看后者是否已完成。如何实现这一点(网络、文件、数据库记录、消息队列)可能会很混乱,并且引入第三个依赖项会有问题。
将 A 和 B 合并为一个进程。这具有将两者紧密结合的缺点,如果需要,很难单独重新运行其中一个或另一个。
想法?
假设我有两个预定进程:A 和 B。
鉴于 B 不应该在 A 完成之前运行,我该如何优雅地强制执行这种依赖关系?
已考虑的方法:
完成后有一个时间表 B。如果由于某种原因 A 失败,这具有 B 永远不会被安排的缺点。
当 B 运行时,让它 ping A 以查看后者是否已完成。如何实现这一点(网络、文件、数据库记录、消息队列)可能会很混乱,并且引入第三个依赖项会有问题。
将 A 和 B 合并为一个进程。这具有将两者紧密结合的缺点,如果需要,很难单独重新运行其中一个或另一个。
想法?