Systemd запускает повторяющиеся python процессов - PullRequest
0 голосов
/ 06 мая 2020

Я использую systemd для запуска приложения python flask на raspberry pi zero (Raspbian buster).

Каждый раз, когда я запускаю службу, она запускает два процесса python вместо одного. Почему это происходит?

enter image description here

Первый процесс является родительским для второго процесса.

enter image description here

Вот мое определение службы в /etc/systemd/system/website.service:

[Unit]
Description=Website
After=network.target

[Service]
User=root
WorkingDirectory=/home/pi/dev
ExecStart=python /home/pi/dev/app.py
Restart=always

[Install]
WantedBy=multi-user.target

Вот приложение flask в / home /pi/dev/app.py

from flask import Flask
app = Flask(__name__)


@app.route('/')
def hello():
    return "Hello World!"

if __name__ == '__main__':
    app.run(host='0.0.0.0', debug=True)

1 Ответ

2 голосов
/ 09 мая 2020

Я нашел ответ: сервер разработки Flask работает с перезагрузчиком, поэтому запускает два процесса. Если я добавлю use_reloader=False при запуске приложения Flask, он запустит только один процесс.

app.run(host='0.0.0.0', debug=True, use_reloader=False)

Подробнее здесь: Почему приложение Flask создает два процесса?

...