Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/300.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 uwsgi内存消耗逐渐增加,但未释放消耗的内存_Python_Django_Nginx_Uwsgi - Fatal编程技术网

Python uwsgi内存消耗逐渐增加,但未释放消耗的内存

Python uwsgi内存消耗逐渐增加,但未释放消耗的内存,python,django,nginx,uwsgi,Python,Django,Nginx,Uwsgi,我正在使用django+nginx+uwsgi运行一个项目,我的uwsgi.ini文件配置如下: socket = /tmp/uwsgi.sock chmod-socket = 666 socket-timeout = 60 enable-threads = true threads = 500 disable-logging=True 使用上述配置还添加了harakiri=60,但无法释放内存 然后尝试添加max request=100和max worker lifetime=30,但内存

我正在使用django+nginx+uwsgi运行一个项目,我的uwsgi.ini文件配置如下:

socket = /tmp/uwsgi.sock
chmod-socket = 666
socket-timeout = 60
enable-threads  = true
threads = 500
disable-logging=True
使用上述配置还添加了harakiri=60,但无法释放内存 然后尝试添加max request=100和max worker lifetime=30,但内存未被释放 在此之后,尝试配置进程=4和线程=2,但也无法释放内存使用。
在分析我的api调用时,我发现了三个批量api,它们不断提高了memroy的使用率并优化了代码。即使在代码优化并将一些参数添加到uwsgi.ini文件后,也无法释放内存。请帮助我解决此问题。

我在使用Django+Uwsgi应用程序时遇到类似问题,这是我的Uwsgi.ini配置:

[uwsgi]

enable-threads  = true
threads = 100
harakiri = 30
max-request = 50
  • 多线程用于提高并发性(我使用了线程 因为它们比运行多个进程更便宜)
  • Harakiri-如果请求花费的时间超过指定的时间(以秒为单位),则请求将被丢弃,并且该工作者将被回收
  • max request-这是一个重要参数,将限制进程处理的请求
完成这些操作后,找出哪个请求会导致来自数据库的巨大数据查询结果,并尽可能对其进行优化


让我知道这是否有效:),再多了解一点信息将有助于找出更好的解决方案。

您能看到哪些进程实际占用更多内存吗?确保你的Django应用程序中没有任何东西在完成后(或者如果以应该的方式终止)不会释放内存。我不确定哪些进程会占用内存。请回答这个问题。