【问题标题】:Getting error code 204 on App engine PHP + BigQuery在应用引擎 PHP + BigQuery 上获取错误代码 204
【发布时间】:2016-03-22 15:22:39
【问题描述】:

我收到此错误:

A problem was encountered with the process that handled this request, causing it to exit. 
This is likely to cause a new process to be used for the next request to your application. 
(Error code 204)

我有一个主要使用 BigQuery 的 PHP 应用程序。我无法调试它,这非常令人沮丧。

here 没有任何帮助。

我能做什么?

应用 ID 为:logolapp

更新回复问题的答案

  1. 是的,它仍在发生,不是每个请求,而是类似于 1/20 的请求。自从我开始开发这个应用程序以来就发生了这种情况,大约是一周前。

  2. 在日志中。在浏览器中我只得到 500

  3. 1/20 左右的请求随机发生

  4. 我正在 BigQuery 中放置和查询统计信息。

另一个更新 - 我的 app.yaml:

application: logolapp
version: 1
runtime: php55
api_version: 1
threadsafe: true

handlers:
- url: /static
  static_dir: static

- url: /data
  script: data.php

- url: /get/.*
  script: get.php

- url: /query/.*
  script: query.php

- url: /post
  script: post.php

- url: /postidm
  script: main.php

- url: /info
  script: info.php

【问题讨论】:

  • 能否请您也发布您的 app.yaml 文件?
  • @DoITInternational 添加了 app.yaml
  • 您能否尝试重新部署应用程序并将threadsafe 值设置为false,因为这可能与您的问题的原因有关。另外,请告诉我您是否在应用程序中广泛使用 Memcache。
  • @DoITInternational 做出了改变。到目前为止没有遇到错误,所以看起来它正在工作。但它不会大大降低性能吗?
  • 我不知道线程安全设置为错误的降低性能。将 Threadsafe 设置为 true 实际上会降低应用程序的速度,因为您有目的地确保或多或少地按顺序处理请求以避免数据争用。

标签: php google-app-engine google-bigquery


【解决方案1】:

这个问题有几个可能的原因,其中一个是实例上的内存不足,可以通过将内存密集型进程移动到具有更多内存的后端实例,或增加实例的实例类来解决你现在正在使用。

另一个可能的原因可能是缩放问题。不过,我需要查看您的 app.yaml 中的缩放设置来确认这一点。

最后,这可能与您的app.yaml 中的threadsafe 设置为true 有关。请将threadsafe 设置为false 以确保GAE 不会与您的代码混淆

如果您可以修改您的问题并添加以下信息,将会很有帮助:

  • 您的问题仍然存在吗?问题是从什么时候开始的?
  • 错误是否显示在您的日志中,或者是您尝试通过浏览器访问应用程序时出现的错误?
  • 问题是连续发生还是分批发生?如果分批,多久发生一次?
  • 您打算用 BigQuery 做什么?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-24
    相关资源
    最近更新 更多