【问题标题】:set_time_limit not working on herokuset_time_limit 不适用于heroku
【发布时间】:2012-12-19 21:08:08
【问题描述】:

我正在将 PHP 与 heroku 一起使用。由于某些数据库插入和查询,我不断收到请求超时错误。

为了避免这个错误,我将这一行添加到我的所有 php 文件中:

set_time_limit(0);

但是,我仍然收到此错误。 heroku 会忽略这个命令吗?

我做了一个简单的检查,看看时间限制是否正在改变:

echo 'TIME : '.ini_get('max_execution_time');
set_time_limit(0);
echo 'TIME : '.ini_get('max_execution_time');

它正在从 30(默认值)更改为 0。尽管进行了更改,但我仍然收到错误消息。

另外,我想补充一点,php 文件正在被 ajax 调用。

此外,据我所知,php没有设置为安全模式,所以没有理由忽略该命令。

Heroku 建议使用后台作业,据我所知,如果任务花费超过 30 秒,它会强制您执行。有人在不使用后台作业的情况下进行管理吗?

更新:尝试使用:

ini_set('max_execution_time', 0);

还是不想工作

【问题讨论】:

    标签: php heroku


    【解决方案1】:

    如果您必须在 Heroku 上超过 30 秒的请求超时,您将需要使用后台作业 - 没有办法解决这个问题(如果请求超过 30 秒,Heroku 将直接终止请求)。 Heroku has some documentation on this.

    【讨论】:

    • 像铁人这样的后台工作者唯一的问题是它无法与 clearDB 通信..(据我所知)
    • 为什么不能呢?据我所知,这只是与数据库对话的代码。
    猜你喜欢
    • 1970-01-01
    • 2023-03-29
    • 2011-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-30
    • 2016-10-10
    • 2014-02-26
    相关资源
    最近更新 更多