golang webservice意外崩溃,没有错误

标签 go net-http redigo

我正在使用 golang 开发一个网络服务。它使用 net/http 包和其他包,例如 github.com/go-sql-driver/mysql 和 redigo (redis)。 我开发的时候没有任何问题,没有bug。 当我将它作为后台服务放在生产服务器上时(即:使用 ./myProgram & 启动)。 问题是,几次之后,情况就不再一样了:可能是几分钟或几个小时,它就会崩溃。该服务不再出现在 netstat 中:它已关闭。 我查看了内存/CPU消耗/打开的tcp连接,没有任何异常。 我还将有关服务的错误和请求的信息记录在文件中,但没有任何异常,它只是崩溃了。

如果你有什么想法,请告诉我。或者关于我可以跟踪错误的方式的任何想法。

最佳答案

您提到这只在生产服务器上运行时才会发生。

当您断开登录 session 时,进程是否会被终止?如果是这样,您想要使用正确的启动脚本,或者至少使用 nohup

启动它
nohup ./myProgram &

参见this answer at serverfault了解更多详情。

关于golang webservice意外崩溃,没有错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31274300/

相关文章:

go - AS400 使用 Golang JDBC 查询

ruby-on-rails - Ruby - 增加代理请求超时

go - 使用 redigomock 测试事务(MULTI)命令

ruby - 在 Ruby 中发出 HEAD 请求

Ruby Net::HTTP 执行已过期

go - 如何使用 redigo 将 map 保存和检索到 redis 中?

go - redigo golang 客户端是否支持键空间事件通知?

json - 为什么 json.Encoder 多加一行?

go - 当上下文变量超出 golang 的范围时,Context.Done() 是否解除阻塞?

mongodb - 创建 ObjectId 与让 DB 创建它