最近在做一个需要大量调用接口的一个功能,然后发现请求次数一多,然后就会有一段时间接口都报503,一直都无法请求成功,但是过阵子又没事了

有问题就去找日志,通过看容器的日志发现了一点小问题,就是容器重启时间有点奇怪,既没有人push代上去,也没有人手动重启,但是容器就是重启了。带着这点疑问,我直接拼命发起大量请求后,发现果然是因为请求太多,日志上直接打印了Killed以后就挂了,接着就重启了

此时有些怀疑是内存不够的问题导致的重启,为了进一步验证,既然容器上的日志无法看出问题,那就去看看k8s的事件,果然发现了问题。

the failed container exited with ExitCode: 137

这句话表示容器收到了SIGKILL信号,进程被干掉了,这是由用户或docker守护程序发起的,而发起原因,一般就是pod中的limit资源设置比较小,然后运行内存不足就挂了

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐