我已经在服务器上运行了django套装的django应用程序,加载管理的每个页面(列表和编辑视图)需要花费大量时间。表的列表视图有1条记录,没有外键,也没有可调用项,该表的列表视图需要6-8秒,而分页到50个元素的表的列表视图则需要25-30秒。
我检查了已执行的SQL,认为日志模块具有以下配置,而且它们似乎没有问题,所有SQL的总时间约为2/4。数据库是postgresql。
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'file': {
'level': 'DEBUG',
'class': 'logging.FileHandler',
'filename': '/opt/django/myproj/log/debug.log',
},
},
'loggers': {
'django.db.backends': {
'handlers': ['file'],
'level': 'DEBUG',
'propagate': True,
},
},
}
我还试图禁用USE_I18N,并将@never_cache从管理员中删除,以防万一,但没有什么改变。
有人对我的服务器可能发生了什么有什么建议吗?
谢谢!
我的上下文处理器:
from django.conf.global_settings import TEMPLATE_CONTEXT_PROCESSORS as TCP
TEMPLATE_CONTEXT_PROCESSORS = TCP + (
'django.core.context_processors.request',
'django.core.context_processors.i18n'
)
发布于 2015-01-26 07:28:23
我预计SQL的总时间将是,远,不到1秒。如果不是,是否有大量的SQL查询?对于您所描述的管理视图,您应该只查看少于10个SQL查询。
SQL查询的数量可能会产生很大的影响,因为Django必须构造它们并构建结果集,而这一次没有包含在为SQL查询提供的时间中。
您应该添加django-debug-工具栏,看看这是否提供了一些线索。
其他缓慢的来源:
发布于 2015-01-28 07:11:04
最后,问题是一个进程运行在服务器上,消耗了98%的CPU。所以和django无关,只是为了防止这对任何人有帮助。
https://stackoverflow.com/questions/28145991
复制相似问题