Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google app engine 在appengine中按时间顺序保持任务队列_Google App Engine_Objectify_Task Queue - Fatal编程技术网

Google app engine 在appengine中按时间顺序保持任务队列

Google app engine 在appengine中按时间顺序保持任务队列,google-app-engine,objectify,task-queue,Google App Engine,Objectify,Task Queue,在GoogleAppEngine中,当您将任务添加到同一推送任务队列时,它们是否会按时间顺序依次排队?或者一个任务可能在另一个任务之前执行,尽管它是最后添加的吗?(这都是假设它们使用相同的队列) 不一定。我能想到两种可能不会发生的情况: 任务可以有不同的ETA(例如,在将来),顺序通常是ETA,请参阅 任务执行可能会失败(无论出于何种原因),并且可能会使用退避方案(即延迟一段时间后)自动重新尝试。这意味着通常在失败任务之后运行的其他任务可能在重试尝试之前实际运行 不一定。我能想到两种可能不会发

在GoogleAppEngine中,当您将任务添加到同一推送任务队列时,它们是否会按时间顺序依次排队?或者一个任务可能在另一个任务之前执行,尽管它是最后添加的吗?(这都是假设它们使用相同的队列)

不一定。我能想到两种可能不会发生的情况:

  • 任务可以有不同的ETA(例如,在将来),顺序通常是ETA,请参阅


  • 任务执行可能会失败(无论出于何种原因),并且可能会使用退避方案(即延迟一段时间后)自动重新尝试。这意味着通常在失败任务之后运行的其他任务可能在重试尝试之前实际运行


    • 不一定。我能想到两种可能不会发生的情况:

      • 任务可以有不同的ETA(例如,在将来),顺序通常是ETA,请参阅


      • 任务执行可能会失败(无论出于何种原因),并且可能会使用退避方案(即延迟一段时间后)自动重新尝试。这意味着通常在失败任务之后运行的其他任务可能在重试尝试之前实际运行


      任务队列不能保证执行顺序。特别是,计划立即运行的任务遵循可能导致重大重新排序的代码路径。推式队列和拉式队列的行为也明显不同


      但是,如果您将任务安排在未来短时间后运行,则执行顺序更有可能是eta顺序。同样,没有任何保证,您应该仔细考虑无序交付是一种正常的情况,尽管这种情况并不常见。故障模式通常是短期内大量的无序任务,而不是偶尔孤立的无序任务。

      任务队列不能保证执行顺序。特别是,计划立即运行的任务遵循可能导致重大重新排序的代码路径。推式队列和拉式队列的行为也明显不同


      但是,如果您将任务安排在未来短时间后运行,则执行顺序更有可能是eta顺序。同样,没有任何保证,您应该仔细考虑无序交付是一种正常的情况,尽管这种情况并不常见。故障模式通常是短时间内大量的无序任务,而不是偶尔孤立的无序任务。

      “这意味着通常在失败任务之后运行的其他任务可能在重试尝试之前实际运行”-哎哟。很高兴知道。谢谢。“这意味着通常会在失败任务之后运行的其他任务可能会在重试尝试之前实际运行”-哎哟。很高兴知道。谢谢