У меня есть сайт, основанный на django + uwsgi. некоторые из таблиц имеют почти 1 миллион строк.django + uwsgi огромный объем использования памяти
После нескольких веб-сайтов использований, память VIRT используется процесс uwsgi достигает почти 20GB ... почти убить моего сервера ...
Не могли бы вы сказать, кто-то, что может причиной этой проблемы? это мои таблицы слишком большие? (маловероятно, Pinterest имеет гораздо больше данных). теперь мне пришлось использовать reload-on-as = 10024 reload-on-rss = 4800, чтобы убить рабочих каждые несколько минут .... это больно ... любая помощь?
Вот мой uwsgi.ini файл
[uwsgi]
chdir = xxx
module = xxx.wsgi
master = true
processes = 2
socket =127.0.0.1:8004
chmod-socket = 664
no-orphans = true
#limit-as=256
reload-on-as= 10024
reload-on-rss= 4800
max-requests=250
uid = www-data
gid = www-data
#chmod-socket = 777
chown-socket = www-data
# clear environment on exit
vacuum = true
Виртуальная память не означает «физическая память». Сколько rss использует ваши процессы? Вы пытались добавить параметр uWSGI-отчета о памяти, чтобы узнать, какие запросы выделяют больше памяти? Какой адаптер базы данных используется? – roberto
благодарит Роберто за быстрый ответ. Я знаю, что VIRT - это не физическая память. но когда он увеличивается, физическая память RSS также резко возрастает, достигая 6 ГБ. быстро. моя память 32 ГБ, осталось только 180M. – edyssy
только сейчас. Я удалил reload-on-as и reload-on-rss и заметил следующее: VIRT - 17.8GB RES: 7.8GB для процесса uwsgi ... CPU 100%. теперь VIRT составляет 19,8 ГБ и RES 10 ГБ. Я использую mysql. – edyssy