Gunicorn + Gevent + kafka python + Flask: потребитель останавливается после простоя - PullRequest
0 голосов
/ 10 июля 2019

У нас есть приложение Python FLASK, в котором мы используем приложение Kafka Consumer, а Flask работает через Gunicorn с Gevent worker.

Мы создали 3 потока для одного и того же скрипта с некоторыми параметрами, и он создает 3 потребителя Kafka. Мы не запускаем один и тот же скрипт 3 раза.

После того как потребитель запустился и простаивал несколько минут, он выходит из цикла опроса. Перезапуская потребителя через Flask api [Curl Command], мы получаем некоторые записи от Kafka, а затем через некоторое время потребитель переходит в состояние ожидания и не может возобновить работу снова.

Трафик в Кафке меньше [он не непрерывный], записи приходят в нерабочее время.

Мы докеризировали его, и он работает в контейнере. Нам нужно вручную нажать команду curl [3 раза для 3 потоков], чтобы запустить службу для каждого потребителя.

Запуск в nohup python3 script.py работает идеально / непрерывно, т.е. без Gunicorn.

Есть мысли по этому поводу?

...