【问题标题】:Google App Engine: Determine whether Current Request is a TaskqueueGoogle App Engine:确定当前请求是否为任务队列
【发布时间】:2012-06-18 11:23:38
【问题描述】:

有没有办法动态判断当前执行的任务是标准的http请求还是TaskQueue?

在我的请求处理程序的某些部分,我做了一些 urlfetches。如果请求是标准的 http 请求,我希望 url 获取的超时延迟短,如果它是 TaskQueue,我希望长。

【问题讨论】:

  • 有趣。我想我会包装创建 TaskQueue 请求的代码,以向 kwargs 添加一个额外的布尔值。可能很乱。

标签: python google-app-engine task-queue


【解决方案1】:

选择以下任一 HTTP 标头:

  1. X-AppEngine-QueueName,队列的名字(可能是默认的)
  2. X-AppEngine-TaskName,任务的名称,或系统生成的唯一 ID(如果未指定名称)
  3. X-AppEngine-TaskRetryCount,该任务重试的次数;对于第一次尝试,此值为 0
  4. X-AppEngine-TaskETA,任务的目标执行时间,自 1970 年 1 月 1 日起以微秒为单位指定。

标准 HTTP 请求没有这些标头。

【讨论】:

    【解决方案2】:

    任务请求总是包含一个特定的set of HTTP headers,您可以查看它。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-29
    相关资源
    最近更新 更多