![](/img/trans.png)
[英]django 404 when loading admin but not local pages when deployed to heroku
[英]Django admin is loading pages incredibly slowly
我有一個運行在gunicorn服務器上的django套裝的django應用程序,它需要花費很多時間來加載管理員的每個頁面(列表和編輯視圖)。 具有1條沒有外鍵和可調用對象的單個記錄的表的列表視圖將花費6-8秒,而分頁到50個元素的表的列表視圖將花費25-30秒。
我檢查了已執行的SQL,認為日志記錄模塊具有以下配置,它們似乎還可以,所有SQL的總時間約為十分之二。 該數據庫是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'
)
我希望SQL的總時間將大大少於1秒。 如果不是,是否有很多SQL查詢? 對於您所描述的管理員視圖,您應該查看少於10個SQL查詢。
SQL查詢的數量可能會產生很大的影響,因為Django必須構造它們並構建結果集,而這段時間不包括在SQL查詢給定的時間內。
您應該添加django-debug-toolbar,看看是否能提供一些線索。
其他緩慢來源:
最終,問題出在服務器上運行的進程消耗了98%的CPU。 因此,與django無關,但以防萬一這對任何人都有幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.