【问题标题】:GAE Random Uncaught Exception ErrorGAE 随机未捕获异常错误
【发布时间】:2014-06-06 12:25:41
【问题描述】:

我在谷歌应用引擎上有一个 codeigniter 应用程序,当我移动应用程序时,它大部分都可以工作,但我会遇到这些间歇性问题,我会点击一个页面,它会完全空白,只有一个标题在 HTML 中显示:

<html><head>
<title>s~nypl-cap : uncaught application failure</title><body><pre><br></pre></body></html>

当我检查日志时,我得到的只是一个 500 错误,内容如下: “处理此请求的进程遇到问题,导致它退出。这可能会导致新进程用于对您的应用程序的下一个请求。(错误代码 204)”

如果我刷新页面,它会重新加载就好了。我不知道有什么问题,任何帮助将不胜感激。

【问题讨论】:

  • 您的应用程序以某种方式使运行时崩溃。你在使用任何框架吗? ZF2 存在已知问题,现在可以通过禁用 APC 来解决。
  • 正如我提到的,我正在使用 Codeigniter 框架。我在另一篇关于禁用 APC 的帖子上读到,但它对我不起作用。错误日志是如此模糊,我无法弄清楚是什么导致它崩溃。我收到的错误消息是完全断断续续的。我现在拥有的应用程序只不过是一个 hello world 应用程序,所以我看不出是什么导致它崩溃。
  • 您介意确定代码以便我们进一步调查此问题吗?谢谢。
  • 一点也不。你可以从这里拉取源:github.com/aurena/CodeIgniter_on_GAE你可以在这里访问应用程序,你只需要使用Gmail帐户登录。

标签: php codeigniter google-app-engine


【解决方案1】:

App Engine cannot have more than 12 concurrent connections to a Cloud SQL instance”。因此,您需要在处理请求之前关闭所有已建立的连接。如果不这样做,将导致泄漏,可能最终新连接失败。这可能是您收到 204 错误的原因之一。因此,在生产(App Engine Cloud SQL)数据库设置部分的“database.php”文件中,您可以将$db['production']['pconnect'] = TRUE; 行更改为$db['production']['pconnect'] = FALSE; 并查看它是否有效。

【讨论】:

  • 几个月前我放弃了在 GAE 上使用 Codeigniter/PHP。决定走 Python/Ferris 路线并使用 NDB。它更容易并且问题更少。不过感谢您的尝试。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-07
相关资源
最近更新 更多