美文网首页
容器退出的时候没有收到kill 信号

容器退出的时候没有收到kill 信号

作者: Shaman | 来源:发表于2019-07-15 18:05 被阅读0次

    解决node 程序退出时候没有注销Eureka 的问题

    现象:

    升级服务或者缩容服务的时候,容器关闭的同时未在Eureka 上注销, 会导致出现大量错误请求。

    原因:

    容器退出的时候进程号为 1 的进程会收到 stop 的信号,从而程序自己可以实现优雅的退出,完成一系列收尾工作,在这里优雅的退出包含了从Eureka 中注销掉当前实例。

    如果用Dockerfile 里面 写的是 CMD [“npm”, "start"] 则node 进程无法接受到这个信号

    解决办法:

    改为 CMD [“node”, "app.js"]

    或者

    参考 即刻技术团队 - 实现真正优雅的容器应用

    相关文章

      网友评论

          本文标题:容器退出的时候没有收到kill 信号

          本文链接:https://www.haomeiwen.com/subject/mdrokctx.html