所以我有一个在Heroku中运行的Java应用程序,它总是在监听一些东西。它不应该被ping,但如果它被ping,它会返回一个H20错误,因为该过程永远不会结束。我该如何防止这种情况?
我试过听一个get
电话:
get("", new Route() {
@Override
public Object handle(Request request, Response response) throws Exception {
return "Hello";
}
});
但后来意识到它将结束整个过程,这意味着在我完成heroku restart
之前它不会再运行,因为该过程在我发布后立即开始。
我该怎么做才能使服务器忽略 ping,而不结束进程本身?
为了清楚起见,这应该是一个文本机器人在某个聊天中侦听命令。
H20 是应用程序启动超时。
对于web
进程类型,Heroku 要求您绑定在 $PORT 指定的端口。如果在 75 秒后,您的进程未绑定到该端口,则认为它太长而无法启动,因此被终止。
如果机器人不打算侦听 HTTP 请求,则可以解决此问题,将进程类型名称从 web 更改为 Procfile 中的其他任何内容。