docker entrypoint 为crond导致golang的进程出现好多僵尸进程

文章讲述了近期服务器在周末遇到SSH登录问题,经过排查发现是Golang编写的Cron任务引发的,由于dockerentrypoint被修改为包含Cron,导致进程fork和内存错误。解决办法是识别并修复Docker守护进程中的entrypoint问题,从而解决了问题。
摘要由CSDN通过智能技术生成

最近的服务器出现每到周末就出问题,现象是ssh不能登录。

具有一定的规律性:就是达到一定的时间就爆发。

golang写的cron获取的标准错误日志是进程fork出错,memory也出错。

开始以为是golang的进程有内存溢出。也着手优化可疑的代码行,但是心里还是没底,总感觉不是go程序本身出问题。

一次偶然的机会发现了系统有大量的僵死进程,并且kill不了,后来发现僵死进程的父进程id是docker守护进程。

考虑到最近docker的entrypoint修改成了,crond,并且根据最近出故障的时间点判断基本是这个问题了。

然后就是修改这个entrypoint,测试验证之后,问题彻底修复。

有类似情况可以一块交流。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值