Google AppEngine任务队列的一致性保证是什么?

时间:2014-11-25 01:30:18

标签: google-app-engine queue task

拉取队列有什么一致性保证?

  • 它是否一致?即:如果已添加任务,则尝试租赁将使该任务完全处于添加的位置。

如果没有,那么:

  • 它的排序是否一致?即:如果按顺序添加任务A和B,那么它们将始终按该顺序租用。

  • 有洞吗?即:如果按顺序添加任务A,B和C,租赁有时会返回A,C吗?

或者除了最终的一致性之外,没有任何保证吗?即:它根本不是一个队列,而只是一个松散排序的任务集合?

(这里有一个先前的相关问题,但它没有提出完全相同的问题: Is the Pull Queue in GAE exhibit consistent FIFO behavior?

1 个答案:

答案 0 :(得分:1)

我不相信任何关于订单的保证都是精细的。秩序被广泛遵守,我从未着手准确回答这个问题,但我不会完全依赖它 - 即使是单一的任务来源。

我确信,分配延迟仅为1秒的任务可能需要很长时间才能在繁忙的队列中重现。 (忙碌'我的意思是> 1k租约/分钟。)