У меня есть веб-приложение, написанное в Flask. Как было предложено всеми, я не могу использовать Flask в производстве. Так что я подумал о Gunicorn с флягой.Как запустить Flask с Gunicorn в многопоточном режиме
В приложении Flask Я загружаю некоторые модели машинного обучения. Они имеют размер 8 ГБ в совокупности. Параллельность моего веб-приложения может идти до 1000 запросов. И ОЗУ машины составляет 15 ГБ.
Итак, что является лучшим способом запуска этого приложения?
С несколькими рабочими оно выбрасывает из памяти исключение, так как размер моделей большой. Я думаю, что с каждым рабочим он будет загружать все модели в различное пространство памяти. – neel
Вам нужно использовать async worker, как gevent, чтобы разрешить параллелизм с одним рабочим: 'gunicorn -k gevent -worker-connections 1000'. – molivier
Вы также можете добавить '--threads' для запуска каждого рабочего с указанным количеством потоков. Подробнее см. – molivier