与python内存泄露作斗争

偶们的网站是基于Django开发的,部署在lighttpd + fastcgi模式,最近遇到一个诡异的问题,不定期有一个或几个进程内存突然飙升至几百兆濒临崩溃。想了很多办法调试

1、gdb动态attach上去,结果python2.5的gdbinit文件的宏似乎不起作用

2、试图使用valgrind未果

3、在python上加signal handler,但是出错时无法响应handler函数

最后只好临时增加一个脚本,检测内存过高的python进程并且直接kill之,算是个临时方案吧

sh 代码
  1. ps --no-headers -A -o "vsz %cpu rss sz ucomm pid" | awk '$1 > 80000 && $5 == "python" '{print $6}' | xargs kill -9  

你可能感兴趣的:(django,python,脚本,lighttpd)