【问题标题】:App engine cron tasks return Error 204应用引擎 cron 任务返回错误 204
【发布时间】:2015-02-19 10:42:40
【问题描述】:

从今天早上开始,我在所有任务队列调用的日志中都收到了这条错误消息。消息是“处理此请求的进程遇到问题,导致它退出。这可能会导致新进程用于对您的应用程序的下一个请求。(错误代码 204)”。我有一段时间没有更新应用程序了,它曾经运行良好。有人可以指出这个错误是什么意思。

谢谢

app.yaml


application: appid
version: 1-05
runtime: php
api_version: 1
threadsafe: true

- url: /worker.php
  script: tasks/worker.php
  login: admin

- url: /new_req
  script: tasks/Fetch/requestAmazonOrders.php
  login: admin

cron.yaml


cron:
- description: new xml orders file requests
  url: /new_req
  schedule: every 7 hours from 04:55 to 19:30
  timezone: Europe/London

请求AmazonOrders.php



   use google\appengine\api\taskqueue\PushTask;


   try {

       $dt = new DateTime();
       $dt_now = new DateTime();

       $times = array(
           'a-start' => $dt->sub(new DateInterval('P90D'))->format('Y-m-d\TH:i:s'),
           'a-end' => $dt->add(new DateInterval('P30D'))->format('Y-m-d\TH:i:s'),
           'b-start' => $dt->add(new DateInterval('P0DT30S'))->format('Y-m-d\TH:i:s'),
           'b-end' => $dt->add(new DateInterval('P30D'))->format('Y-m-d\TH:i:s'),
           'c-start' => $dt->add(new DateInterval('P0DT30S'))->format('Y-m-d\TH:i:s'),
           'c-end' => $dt_now->sub(new DateInterval('P0DT2M'))->format('Y-m-d\TH:i:s')
       );
       foreach (array('a', 'b', 'c') as $stage) {
           $params = array(
               'action' => 'NewReportRequest',
               'stage' => $stage,
               'times' => $times
           );
           $task = new PushTask('/worker.php', $params);
           $task_name = $task->add('Secondary');
           syslog(LOG_INFO, "NewReportRequest(FlatFile): stage: $stage. $task_name");
       }
       return;

   } catch (Exception $ex) {

       syslog(LOG_ERR, $ex->getLine() . PHP_EOL . $ex->getFile() . PHP_EOL . $ex->getMessage() . PHP_EOL . $ex->getTraceAsString());
       return;

   }

【问题讨论】:

  • 请添加您的代码
  • 添加了我认为相关的内容。谢谢!

标签: php google-app-engine


【解决方案1】:

每当我的任务花费超过 10 分钟并且用户请求花费超过 1 分钟时,我通常会遇到同样的错误。对于提到的不同缩放类型,此超时时间是不同的 here

【讨论】:

  • 感谢您的回复,但不,这不是原因。这些任务通常在 10 分钟的限制内运行良好。问题不在于任务执行; cron 运行任务时(调用 /new_req 时)会给出错误。另一件需要注意的是,它是随机发生的。今天,只有两次出现此错误和与 cron 无关的处理程序,所以我开始认为这与我的 app.yaml 有关。
猜你喜欢
  • 1970-01-01
  • 2018-05-24
  • 1970-01-01
  • 2018-10-13
  • 2014-01-12
  • 1970-01-01
  • 2018-12-07
  • 2014-03-22
  • 2011-08-21
相关资源
最近更新 更多