【发布时间】:2018-01-20 17:19:24
【问题描述】:
我正在开发一个应用程序,其中多个客户端将写入一个(或多个队列),并且多个工作人员将处理队列外的作业。问题是在某些情况下,工作是相互依赖的。我所说的“依赖”是指它们需要按顺序处理。
这通常发生在用户创建实体并在不久后删除时。显然,我希望在删除之前进行第一份工作(即创建)。问题是创建可能比删除需要更长的时间,所以我不能保证在删除作业开始之前它会完成。
我想这种类型的问题在异步处理中相当普遍。有哪些应对策略?我知道我可以为队列分配优先级以对处理顺序进行一些控制,但在这种情况下这还不够好。我需要具体的保证。
【问题讨论】:
标签: queue priority-queue