更新-解决
事实证明,问题是服务器有一个挂载,指向本周早些时候退役的文件服务器;因此,与django /mod/等毕竟没有关系。更新挂载解决了问题。
非常感谢你的评论和帮助,并对此表示歉意.我将研究在任何情况下从mod-python升级:-)
摘要
我正在维护一个Django网络应用程序,直到几天前它还在运行,但是现在所有的web请求都挂了很长时间。我不知道有什么变化,所以问题可能很简单。
我尝试过重新启动and服务器,并重新启动httpd。“‘top”显示服务器在CPU和内存方面做得很好。
有人能建议其他容易出错的简单事情吗?或者其他要检查的事情吗?
详细信息
我没有创建web服务器,因此不幸的是,我并不完全确定详细信息,也不确定在哪里查找所有日志等等。我知道web服务器由以下组件组成:使用Django实现;在Linux服务器上运行;使用PostgreSQL数据库;用于静态内容;Apache处理传入的HTTP请求并通过mod_python传递给Django;使用memcached缓存呈现的页面。我确实可以完全访问Linux服务器和数据库,所以如果我知道在哪里查找,就可以愉快地查看任何东西。
当我提出新请求时,/var/log/httpd/access_log和error_log显示如下行。我不知道mod_python行是否表示错误(当我搜索这个日志时,没有明显的错误)。
access_log:
127.0.0.1 - - [13/Jan/2011:10:56:11 +0000] "GET /testruns/testrun2176/ HTTP/1.0" 301 - "http://myapp/testruns/" "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-GB; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 ( .NET CLR 3.5.30729; .NET4.0E)"error_log:
[Thu Jan 13 10:34:19 2011] [notice] mod_python: (Re)importing module 'django.core.handlers.modpython'运行开发服务器的输出
# python manage.py runserver 0.0.0.0:8088
Validating models...
0 errors found
Django version 1.0-final-SVN-unknown, using settings 'myapp.settings'
Development server is running at http://0.0.0.0:8088/
Quit the server with CONTROL-C.
[13/Jan/2011 14:23:31] "GET /testruns/testrun2176/ HTTP/1.1" 301 0然后什么都不会发生。网页只是卡住了加载。
我可以加载一个稍微简单一些的页面。通过开发版本,图片不会加载,但在其他情况下是可以的。简单的页面位于/testruns/ --尽管出于某种原因,我在runserver输出中没有看到该页面:
# python manage.py runserver 0.0.0.0:8088
Validating models...
0 errors found
Django version 1.0-final-SVN-unknown, using settings 'myapp.settings'
Development server is running at http://0.0.0.0:8088/
Quit the server with CONTROL-C.
[13/Jan/2011 14:27:42] "GET /static/myapp.css HTTP/1.1" 404 1113
[13/Jan/2011 14:27:42] "GET /static/myapp_print.css HTTP/1.1" 404 1113
[13/Jan/2011 14:27:42] "GET /static/myapp_ticks_crosses.css HTTP/1.1" 404 1113我应该再次指出,几天前一切都很顺利。从那以后,我没有显式地改变任何东西--我突然发现所需的页面不会加载,我正在试图找出原因。
/var/ log /httpd/ log文件似乎没有显示任何特别有趣的内容,我也不确定还应该看什么。
我们正在运行第二台服务器,它可以处理不同的测试结果集。运行开发服务器表明需要301重定向(./testrunX/重定向到./testrunX/坏/页1/)。
// This trace, on a different server but with a similar setup, shows that the
// 301 redirect is expected, and is not the source of the problem
[server2]# python manage.py runserver 0.0.0.0:8088
Validating models...
0 errors found
Django version 1.0-final-SVN-unknown, using settings 'myapp.settings'
Development server is running at http://0.0.0.0:8088/
Quit the server with CONTROL-C.
[13/Jan/2011 14:47:59] "GET /testruns HTTP/1.1" 301 0
[13/Jan/2011 14:47:59] "GET /testruns/ HTTP/1.1" 200 11568
[13/Jan/2011 14:47:59] "GET /static/myapp.css HTTP/1.1" 404 1131
[13/Jan/2011 14:47:59] "GET /static/myapp_print.css HTTP/1.1" 404 1131
[13/Jan/2011 14:47:59] "GET /static/star.png HTTP/1.1" 404 1131
[13/Jan/2011 14:47:59] "GET /static/myapp_ticks_crosses.css HTTP/1.1" 404 1131
[13/Jan/2011 14:47:59] "GET /static/star.png HTTP/1.1" 404 1131
[13/Jan/2011 14:48:02] "GET /static/star.png HTTP/1.1" 404 1131
[13/Jan/2011 14:48:12] "GET /testruns/testrun1879/ HTTP/1.1" 301 0
[13/Jan/2011 14:48:12] "GET /testruns/testrun1879/broken/page1/ HTTP/1.1" 200 309477
[13/Jan/2011 14:48:12] "GET /static/myapp.css HTTP/1.1" 404 1131
[13/Jan/2011 14:48:12] "GET /static/myapp_print.css HTTP/1.1" 404 1131
[13/Jan/2011 14:48:13] "GET /static/myapp_ticks_crosses.css HTTP/1.1" 404 1131所以我不认为有无限的循环。只是由于某种原因,请求/数据库查询/其他东西花费的时间太长或完全卡住了。
memcached info
在坏服务器上的memcached似乎是空的。但是,如果web请求失败,(即没有返回到缓存中的任何内容)(缓存过期时间为12小时),这可能是意料之中的事。
坏服务器:
// Top - only using 6K memory (VIRT)
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
30743 nobody 15 0 6640 4972 476 S 0.0 1.9 0:00.01 memcached
// memcache-top from http://code.google.com/p/memcache-top/
// only using 0.2% available space
memcache-top v0.6 (default port: 11211, color: on, refresh: 3 seconds)
INSTANCE USAGE HIT % CONN TIME EVICT/s READ/s WRITE/s
127.0.0.1:11211 0.2% 0.0% 5 0.8ms 0.0 2 161
AVERAGE: 0.2% 0.0% 5 0.8ms 0.0 2 161
TOTAL: 111.0KB/ 64.0MB 5 0.8ms 0.0 2 161好服务器:
// Top - using ~68K memory (VIRT)
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2503 nobody 15 0 67900 8256 396 S 0.0 3.2 0:01.68 memcached
// memcache-top - using 63% space
memcache-top v0.6 (default port: 11211, color: on, refresh: 3 seconds)
INSTANCE USAGE HIT % CONN TIME EVICT/s READ/s WRITE/s
127.0.0.1:11211 63.2% 0.0% 3 1.2ms 0.0 0 0
AVERAGE: 63.2% 0.0% 3 1.2ms 0.0 0 0
TOTAL: 40.5MB/ 64.0MB 3 1.2ms 0.0 0 0发布于 2011-01-13 11:23:15
我只想提几点:
https://stackoverflow.com/questions/4679336
复制相似问题