Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django应用程序占用服务器内存_Python_Django_Memory_Server - Fatal编程技术网

Python Django应用程序占用服务器内存

Python Django应用程序占用服务器内存,python,django,memory,server,Python,Django,Memory,Server,我在数字Ocean512MB内存中有django应用程序,在Ubuntu 16.04上有Postgres、Nginx和Gunicorn。在运行应用程序时,它会消耗更多内存。如果我浏览这些页面,使用top命令检查时也会消耗内存。问题是什么?可能的原因是什么 古尼科恩 Nginx 在settings.py中,我还设置了DEBUG=False 我试着在谷歌上搜索,但我不能完全理解。为什么会这样,我错过了什么。你们能帮我解决这个问题吗。这对我来说太棒了。提前感谢。查看有关应用程序优化的内容。如果没有看到

我在数字Ocean512MB内存中有django应用程序,在Ubuntu 16.04上有Postgres、Nginx和Gunicorn。在运行应用程序时,它会消耗更多内存。如果我浏览这些页面,使用top命令检查时也会消耗内存。问题是什么?可能的原因是什么

古尼科恩

Nginx

在settings.py中,我还设置了DEBUG=False

我试着在谷歌上搜索,但我不能完全理解。为什么会这样,我错过了什么。你们能帮我解决这个问题吗。这对我来说太棒了。提前感谢。

查看有关应用程序优化的内容。如果没有看到您的代码,很难说什么是相关的。但这是一个很好的起点

一个巨大的帮助是,如果您正在使用大型查询集进行迭代,则会阻止整个查询集被缓存。

查看关于应用程序优化的内容。如果没有看到您的代码,很难说什么是相关的。但这是一个很好的起点


一个巨大的帮助是,如果您在大型查询集上迭代使用-这会阻止整个查询集被缓存。

通过查看内存消耗情况,并不能真正反映问题是什么或是否确实存在问题。除非您关心的是从同一个框中运行的其他应用程序还有多少内存。否则,缓存占用的内存实际上是应用程序所需的


我认为您应该关注页面加载时间和使用的内存。对于每个页面,您是否总是从代码中检索大型查询集和迭代/筛选?是否有查询集可以重复使用或组合使用,这样就不需要再进行查询?当应用程序有更多的用户而不是启动实例所需的内存时,这些都会给您带来麻烦。

通过查看内存消耗情况并不能真正反映问题是什么或是否确实存在问题。除非您关心的是从同一个框中运行的其他应用程序还有多少内存。否则,缓存占用的内存实际上是应用程序所需的

我认为您应该关注页面加载时间和使用的内存。对于每个页面,您是否总是从代码中检索大型查询集和迭代/筛选?是否有查询集可以重复使用或组合使用,这样就不需要再进行查询?当应用程序有更多的用户而不是启动实例所需的内存时,这些都会给您带来麻烦。

我建议您发布Django性能,Django内存巨大的主要原因之一是因为您使用的是列表而不是迭代器

尊敬。

我建议您发布Django性能,Django内存巨大的主要原因之一是您使用的是列表而不是迭代器


问候。

您的设置看起来很好,您是否执行长时间运行/计算任务?@OrDuan感谢您的回复。不,我没有任何长时间运行/计算任务。但是有更多的记录来自不同的表近14000行。你有内存泄漏,没有代码很难说在哪里。检查您是否更改了在调用中保留的变量,因为这些变量是全局变量或导入的。谢谢你的回复。内存泄漏在某种意义上,我可以在我的代码中找出这个问题吗?这里有太多的方法来创建内存泄漏来解释它们。抱歉。您的设置看起来很好,您是否执行长时间运行/计算任务?@OrDuan感谢您的回复。不,我没有任何长时间运行/计算任务。但是有更多的记录来自不同的表近14000行。你有内存泄漏,没有代码很难说在哪里。检查您是否更改了在调用中保留的变量,因为这些变量是全局变量或导入的。谢谢你的回复。内存泄漏在某种意义上,我可以在我的代码中找出这个问题吗?这里有太多的方法来创建内存泄漏来解释它们。抱歉。非常感谢您的回复,您能告诉我哪里应该使用QuerySet.iterator吗,任何示例。非常感谢您的回复,您能告诉我哪里应该使用QuerySet.iterator吗,任何示例。谢谢您的回答,您的解释有一定的意义。让我说说你的要求。谢谢你的回答,你的解释有一定道理。让我说说你的要求。这是我的建议。谢谢这是我的推荐。谢谢
[Unit]
Description=veeyar daemon
After=network.target

[Service]
User=root
Group=www-data
WorkingDirectory=/home/webapps/myproject/
ExecStart=/home/webapps/myproject/venv/bin/gunicorn --access-logfile - --workers 3 --bind unix:/home/webapps/myproject/myproject.sock myproject.wsgi:application

[Install]
WantedBy=multi-user.target
server {
    listen 9090;
    location = /favicon.ico { access_log off; log_not_found off; }
    location ^/static/ {
        root /home/webapps/myproject/staticfiles;
    }

    location / {
        include proxy_params;
        proxy_pass http://unix:/home/webapps/myproject/myproject.sock;
    }
}