Я озадачен высоким процентом использования памяти Gunicorn.Приложение, которое я запускаю, представляет собой глубокую обучающую среду для автоматического распознавания изображений.
Использование памяти постоянно колеблется около 67%, даже после того, как я увеличил объем памяти с 1 ГБ до 3 ГБ.То, что даже озадачивает, - то, что память, кажется, используется несколькими идентичными процессами Gunicorn, как показано ниже.Я вручную убил некоторые процессы с большим количеством оперативной памяти, такие как PID 2004 и 1860, но они постоянно возвращались, и 67% использования памяти оставалось, а иногда становилось еще выше.В результате инструмент чтения изображений, такой как cv2.imread, постоянно не справляется с изображениями большого размера из-за нехватки памяти.
$ ps aux --sort = -% mem
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
user 2004 5.6 39.0 2304052 1201968 ? S 17:33 0:08 /home/user/anaconda3/envs/project/bin/python /home/user/anaconda3/envs/project/bin/gunicorn --workers 2 --bind unix:/home/user/project-master/project.sock -m 007 wsgi:app
user 1860 2.5 38.6 2289024 1189396 ? S 17:14 0:32 /home/user/anaconda3/envs/project/bin/python /home/user/anaconda3/envs/project/bin/gunicorn --workers 2 --bind unix:/home/user/project-master/project.sock -m 007 wsgi:app
user 1694 0.0 0.5 43620 17416 ? Ss 17:14 0:00 /home/user/anaconda3/envs/project/bin/python /home/user/anaconda3/envs/project/bin/gunicorn --workers 2 --bind unix:/home/user/project-master/project.sock -m 007 wsgi:app
Интересно, нормально ли такое высокое использование памяти для веб-приложения, подаваемого Gunicorn?Если нет, я могу как-нибудь это исправить?Спасибо!