如何设置工匠的超时时间?超时后,工作将被杀死.
我在应用程序上使用Laravel 5.0,我每分钟在app / Console / Kernel.PHP中安排一些工匠工作.
当我重复这些工作时
ps -ef | grep artisan
似乎每个作业都在单独的进程中运行.
root 23322 1 0 13:44 ? 00:00:00 xxx/PHP-5.5.7/bin/PHP artisan fetchTopic 0 10 1
root 23324 1 0 13:44 ? 00:00:00 xxx/PHP-5.5.7/bin/PHP artisan fetchTopic 0 10 2
root 23326 1 0 13:44 ? 00:00:00 xxx/PHP-5.5.7/bin/PHP artisan fetchComment
当一项工作完成任务时,该过程将自动终止.
但是奇怪的是某些过程没有被正常终止.随着时间的流逝,越来越多的奇怪进程将永久存在,从而导致cpu 100%.因此,我想为工匠工作设置一个超时时间,超时后该工作将被自动终止.
解决方法:
我检查了Laravel代码,没有杀死这些冗长的工艺流程的优雅方法.
但是,您可以自行承担限制整个PHP执行时间的风险.您可以为此使用功能set_time_limit()或在PHP.ini中添加max_execution_time
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。