请参阅下面的编辑#2了解可能的根本原因
我的Django线程/进程(同时使用'method = threaded'和'method = prefork'),每10分钟左右,随机构建如下: http://i.imgur.com/VyUAv.png例如很多这些过程:
python ./manage.py runfcgi method=threaded host=localhost port=8888
然后在一分钟左右,线程/进程积累足以取出我的网站。
网站负载非常小,但流量相当高,所以我认为这是一种阻塞问题。
有关如何解决甚至有效调试此问题的任何想法? 感谢。
编辑:我也从我的许多Django视图中使用了Redis。我现在开始研究Redis死锁问题成为问题根源的可能性......
编辑#2:我发现Redis在问题开始时被固定在100%的CPU上,这让我相信Redis的各种僵局是核心问题。
我也遇到了这个错误:
“(错误)加载Redis正在将数据集加载到内存”
中尝试通过此命令完全重启Redis时:
./src/redis-cli flushall
重要提示:我在一个单独的EC2微型实例上使用Redis 2.2.7而不是我的Django Web应用程序。
答案 0 :(得分:0)
线程和进程是两回事。如果整个站点出现故障,原因很可能是线程。
答案 1 :(得分:0)
原来是Redis中一个不起眼的错误。
Redis更新,Redis 2.2.7 - > Redis 2.4.16解决了这个问题。