php - PHP中maximum_execution_time的最大值是多少?

标签 php laravel laravel-4

我有大约 200,000 行需要添加到数据库中。

我已经设置了 maximum_excution_time = 4000,但仍然收到此错误。

enter image description here

PHP中maximum_execution_time的最大值是多少?

我想完全取消这个限制,如果可能的话将其设置为无限制。

最佳答案

我知道在 set_time_limit 中使用值 0 将告诉 PHP 在脚本/程序完成运行之前不要超时。我非常确定在 maximum_excution_time 中设置相同的值会产生相同的效果。

也就是说:一些托管公司运行其他系统来查找任何类型的长时间运行的进程(PHP、Ruby、Perl、随机程序等),如果运行时间过长则将其终止。您无法阻止这些系统终止您的进程(除了移动到不同的主机)

此外,某些版本的 PHP 存在许多小内存泄漏/低效垃圾收集,在长时间运行的进程中使用时可能会开始耗尽内存。您可能会遇到 PHP 内存限制,或者您可能会耗尽虚拟机的可用内存量。

如果您遇到这些挑战,通常的方法是以某种方式批量处理行。

希望有所帮助,祝你好运!

更新:重新批处理 - 如果您发现自己被困在一次只能插入大约 10,000 行的系统上,而不是编写一个程序来一次插入所有 200,000 行,您编写一个程序/系统,它将插入 9,000 个,然后停止。然后再次运行它,它会插入下一个 9,000。然后是下一个 9,000,直到完成。如何执行此操作取决于您从何处获取数据。如果您从平面文件中提取这些数据,那么就像将平面文件拆分为多个文件一样简单。如果您从另一个数据库表中提取数据,那么就像编写一个程序来提取 9,000 个一组的 ID 数组一样简单,然后让您的主程序选择这 9,000 行。消息队列系统是此类任务的另一种流行方法。

关于php - PHP中maximum_execution_time的最大值是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28839797/

相关文章:

javascript - 如何在javascript中动态添加复选框到表格中

php - PDF 页眉和页脚未使用 wkhtmltopdf 呈现

php - Laravel 返回带参数的响应

php - Dropzone 和非对象错误

php - 执行排名查询时mysql语法错误

php - 我如何在magento中找到dispatchEvent方法?

php - CodeIgniter 路由在子目录中不起作用

php - Facebook 风格封面照片上传、重新定位、裁剪和保存在 bootstrap 3 中使用 php 和 jquery

php - Laravel 计划仅在初始化时触发一次

css - 如何向 Laravel 4 Forms 添加类