与python内存泄露作斗争
偶们的网站是基于Django开发的,部署在lighttpd + fastcgi模式,最近遇到一个诡异的问题,不定期有一个或几个进程内存突然飙升至几百兆濒临崩溃。想了很多办法调试1、gdb动态attach上去,结果python2.5的gdbinit文件的宏似乎不起作用
2、试图使用valgrind未果
3、在python上加signal handler,但是出错时无法响应handler函数
最后只好临时增加一个脚本,检测内存过高的python进程并且直接kill之,算是个临时方案吧
sh 代码
[*]ps --no-headers -A -o "vsz %cpu rss sz ucomm pid" | awk '$1 > 80000 && $5 == "python" '{print $6}' | xargs kill -9
页:
[1]