https://mp.weixin.qq.com/s/sGS-Kw18sDnGEMfQrbPbVw 内核futex的BUG导致程序hang死问题排查 原创: 王领先 58架构师 今天   近日,Hadoop的同学反映,新上的几台机器上的java程序出现hang死的现象,查看系统的message记录,发现一些内存方面的错误输出,怀疑是内存不足导致java程序hang死在gc的过程中.经排查发现即使是在内存充足的情况下也会出现程序hang死的现象. 我们又发现只有这批新上的机器才出现hang死的问题…
[perf工具导致系统hang住的原因是触发了低版本kernel的bug] 今天在测试服务器做压测,运行perf record做性能分析时,系统再次hang住了,这次在系统日志中记录了一些有用的信息,如下 Dec 25 14:37:05 kernel: BUG: soft lockup - CPU#1 stuck for 67s! 通过在网上搜索,确认这是linux kernel的一个bug,详细描述如下: https://bugzilla.redhat.com/show_bug.cgi?id=…
一:背景 1. 讲故事 去年阿里聚石塔上的所有isv短信通道全部对接阿里通信,我们就做了对接改造,使用阿里提供的.net sdk. 网址:https://help.aliyun.com/document_detail/114480.html 同事当时使用的是ons-.net v1.1.3版本,程序上线后若干天就会有一次程序崩溃现象,当时也没特别在意,以为是自己代码或者环境出了什么问题,索性就加了一个检测程序,如果检测到sdk程序退出就自动重启,就这样先糊弄着,直到有一天服务器告警,那个程序CPU…
subprocess.stdout.read()导致程序死锁的问题解决 今天有位老哥联系我说,在我的python之路系列中,解决粘包问题那一章的代码有BUG 这里当运行命令过于庞大的时候,会导致程序直接卡死在这里,我自己试试了下,确实有这个问题. 但是到底是为什么呢,前前后后想了好久,没找到答案,后来google了半天以及翻了下官方文档 终于找到了问题所在!!!划重点 如果设置了stdout或stderr,subprocess就会调用os.pipe创建一个管道用于其和子进程之间的通信,而上面的问…
之前在 golang 群里有人问过为什么程序会莫名其妙的 hang 死然后不再响应任何请求.单核 cpu 打满. 这个特征和我们公司的某个系统曾经遇到的情况很相似,内部经过了很长时间的定位分析总结,期间还各种阅读 golang 的 runtime 和 gc 代码,最终才定位到是业务里出现了类型下面这样的代码: package main import "runtime" func main() { var ch = make(chan int, 100) go func() { for…
问题背景: 笔者所在的项目组最近把生产环境Tomcat迁移到Linux,算是顺利运行了一段时间,最近一个低概率密度的(too many open files)问题导致服务假死并停止响应客户端客户端请求. 进入服务器查看日志,发现tomcat凌晨6-7点的日志丢失,查看进程端口仍旧开放. root@# lsof -i: COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME java root 0t0 TCP *: (LISTEN) 从存档的日志找到一…
来自猫扑:程序bug导致了天大的损失,要枪毙程序猿吗? 0 引言 年会上Review 源代码算什么? 法庭上 Review code 才带劲..... 2015年9月3日,随着东京最高法院驳回瑞穗证券的上诉,维持二审的原判结果,一个长达10年的诉讼终于画下了句号.这个判例将对IT行业产生深远的影响:如果程序的bug导致了巨大的经济损失,应该由谁来承担?用户?运营商?还是系统开发商? bug:计算机程序里的错误 今天故事的主角是,瑞穗(みずほ)证券,东京证券交易所(下文简称东证),和富士通. 1…
一.问题描述 服务器硬件:DELL R720 系统版本:CentOS7.0 内核版本:3.10.0-123.el7.x86_64 故障现象:偶尔会重启 二.问题原因 经查看dmesg日志发现是kernel BUG导致的重启 参考链接: https://bugs.centos.org/view.php?id=7474 https://support.huawei.com/enterprise/zh/knowledge/EKB1000093670 三.解决方法 将内核升级到:3.10.0-123.2…
      如何编写更少bug的程序?  尽可能避免常见的程序错误.              沟通设计先行 + 编写可复用代码 + 做得更多 + 做的更少 + 创造“编程心流”+ 严格的程序测试            一. 沟通设计先行        为避免需求或业务逻辑理解的不完全或偏差,  或者设计上存在较大的缺陷, 导致后期不必要的返工, 耗费宝贵的时间和精力, 编程开发遵循的首要准则是沟通设计先行: 与需求方.业务方和工作伙伴多多沟通交流, 进行设计评审, 能够有效地减少因为需求.业务…
1. 问题 当在console中调用API ShellExecuteEx打开"test.iqy"文件时,发现excel会hang住,console退出后excel才会响应,但直接双击"test.iqy"是没有问题的,有意思的是这个情况只有在xp发生,在win7上没有这个问题. 2. 重现步骤 重现环境:XP sp3 / Office 2007(其他office版本应该也可以,没有测试) https://files.cnblogs.com/files/organic/…