常见服务崩溃分析流程

1.检查系统崩溃是否由于资源不足引起(dmesg -T),一般这种场景下没有coredump文件

nginx服务单进程运行正常,。多进程运行,服务异常退出,且没有coredump文件,通过dmesg命令发现是系统将进程杀死了,
特别是docker场景下,最容易出现docker限制了资源,看资源还有富余,实际上docker里的资源已经用光了

2.存在core文件分析崩溃日志(注意通过solib-search-path来设置动态库路径,不然有可能具体代码全是??)
3.信号11的崩溃有可能是文件描述符没有释放引起的,先检查资源的释放问题

编写一个websocket客户端,100以内并发调用客户端没有问题,超过100调用客户端就会在connect位置coredump,
后来发现是因为每次connect之后套接字都没有关闭,导致服务崩溃,这种错误无法被内存检测工具检测出来,并且信号也是11,很容易产生误解,需要注意
原文地址:https://www.cnblogs.com/zhanggaofeng/p/14295464.html