对Django web应用程序的请求正在挂起;简单的调试技巧?
更新-已解决 问题是服务器的挂载指向本周早些时候退役的文件服务器;因此,毕竟与django/mod python/etc没有关系。更新挂载解决了这个问题 非常感谢您的评论和帮助,并为白费力气而道歉。。。我将研究在任何情况下升级mod python:-) 摘要 我正在维护一个Django web应用程序,它在几天前还可以正常工作,但现在所有的web请求都会挂起很长时间。我不知道有什么变化,所以问题可能很简单 我已尝试重新启动Web服务器,并重新启动httpd。”“顶部”显示服务器在CPU和内存方面运行良好 有人能建议其他容易出错的简单事情,或者其他需要检查的事情吗 更多详细信息 我没有创建web服务器,因此不幸的是,我不能完全确定全部细节,或者在哪里查找所有日志等。我知道web服务器由以下组件组成:使用Django实现;在Linux服务器上运行;使用PostgreSQL数据库;lighttpd用于静态内容;Apache处理传入的HTTP请求,并通过mod_python将它们传递给Django;使用memcached缓存呈现的页面。我确实可以完全访问Linux服务器和数据库,所以如果我知道去哪里看,我可以很高兴地到处看看 /每当我发出新请求时,var/log/httpd/access\u log和error\u log都会显示如下行。我不知道mod_python行是否指示错误(当我在谷歌上搜索这个日志时,没有什么明显的) 访问日志:对Django web应用程序的请求正在挂起;简单的调试技巧?,django,apache,webserver,mod-python,Django,Apache,Webserver,Mod Python,更新-已解决 问题是服务器的挂载指向本周早些时候退役的文件服务器;因此,毕竟与django/mod python/etc没有关系。更新挂载解决了这个问题 非常感谢您的评论和帮助,并为白费力气而道歉。。。我将研究在任何情况下升级mod python:-) 摘要 我正在维护一个Django web应用程序,它在几天前还可以正常工作,但现在所有的web请求都会挂起很长时间。我不知道有什么变化,所以问题可能很简单 我已尝试重新启动Web服务器,并重新启动httpd。”“顶部”显示服务器在CPU和内存方面
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)"
错误日志:
[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/redirects to…/testrunX/break/page1/) 所以我不认为存在无限循环。由于某种原因,请求/数据库查询/其他内容花费的时间太长或完全卡住 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
我只想提几点:
- 您应该尽快避免使用mod_python,因为它的用法已被弃用,而且django将来也不支持它
- 您可以使用开发服务器重现问题吗
- 您可以使用不同的数据库后端复制它吗
- 尝试使用检查是否出现过复杂的数据库查询或类似问题李>
- 错误日志中的行李>
- 您应该尽快避免使用mod_python,因为它的用法已被弃用,而且django将来也不支持它
- 您可以使用开发服务器重现问题吗
- 您可以使用不同的数据库后端复制它吗
- 尝试使用检查是否出现过复杂的数据库查询或类似问题李>
- 错误日志中的行李>
// 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