我有一个用 ruby 编写的报废脚本,在工作台内的 Heroku 上运行。即使脚本运行顺利并以状态 0 退出,heroku 仍然告诉我测功机崩溃了:
2016-12-13T00:59:10.695566+00:00 heroku[spider.1]: State changed from up to crashed
2016-12-13T00:59:10.683166+00:00 heroku[spider.1]: Process exited with status 0
当脚本结束时,我该怎么做才能使测功机正确停止?
Thanks.
作为测功机编队一部分运行的测功机预计会持续运行。适合您的架构是:
- 以命令形式添加抓取工具(例如,设置了可执行位的脚本),您可以通过以下方式运行
heroku run
, e.g. heroku run -r production scrape
.
- 添加一个从第 1 点运行命令的脚本,例如您可以使用平台API https://devcenter.heroku.com/articles/platform-api-reference#dyno-create or
heroku run -r production scrape
.
- 从 Heroku 调度程序调用第 2 点中的脚本。
这应该是一个很好的起点。您需要处理一些极端情况,例如确保一次只能运行一次抓取(当然,如果这是您的要求)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)