我在Heroku上运行了一个后台PHP脚本(使用dyno工)。由于脚本需要大量时间才能运行,因此我已经超越了PHP的时间限制(它是系统地调用API并将结果存储在MySQL中)。
在localhost上运行,脚本可以顺利完成。但是,在Heroku上约15分钟后终止。我的日志显示以下内容:
Jul 19 17:05:20 heroku heroku/run.4487: Client connection closed. Sending SIGHUP to all processes
Jul 19 17:05:21 heroku heroku/run.4487: State changed from up to complete
Jul 19 17:05:21 heroku heroku/run.4487: Process exited with status 129
这是什么意思,请问如何解决?
答案 0 :(得分:0)
我向Heroku支持人员问了同样的问题,他们告诉我这是因为我是从命令行运行作业,但是与客户端的连接丢失了。
对于可能偶然发现此问题的人来说,此修复程序是在命令行中将run
替换为run:detached
。这使工作完全脱离了我,让它可以自由地跑到夕阳下。