我以一种不那么优雅的方式杀死了一个IRB提示(以heroku run irb
开头),现在我有了一个我似乎无法杀死的僵尸进程:
Process State Command
------------ ------------------ ------------------------------
run.3 up for 2h irb -r ./init.rb
web.1 up for 0s thin -p $PORT -e $RACK_ENV -R $HER..
我试过了:
heroku restart
heroku ps:scale run=0
heroku ps:restart run.3
任何人都知道我怎么强行戒掉它?
答案 0 :(得分:122)
我注意到几天前在Heroku命令行客户端添加了一个新的ps:stop
命令:
https://github.com/heroku/heroku/commit/a6d9eb7f314bf2c5f162a508e8d764286fb577bb
我不确定这个更改是否会进入版本2.9.0但是值得一试。
<强>更新强>
现在位于Heroku Toolbelt。跑吧:
heroku ps:stop <process id from heroku ps>
示例:
heroku ps:stop run.8729
答案 1 :(得分:11)
谢谢詹姆斯!!我需要先更新我的Heroku客户端,它就像一个魅力。
$ sudo gem install heroku
$ heroku ps #to view processes
$ heroku stop <process name here>
答案 2 :(得分:0)
编辑:他们已经解决了这个问题
Heroku没有办法杀死废弃的run.x进程。
但它将在24小时后自动被杀死。
答案 3 :(得分:0)
如果其他人正在努力使用以下方法进行杀死:
heroku run ps:stop run.789
按ID杀死对我有用:
heroku ps:kill 61ff0687-eaf4-4299-9c65-f0b22af7ec67
我使用平台api列表dynos获得了ID-https://devcenter.heroku.com/articles/platform-api-reference#dyno-list
为被遗弃的独立的一次性工作。