Python Flask and multiprocessing


Flask 프레임워크와 Python multiprocessing을 함께 사용하면 의도치 않게 프로세스가 두번 실행되는 현상이 발생한다. 원인은 Flask의 auto reloading 기능이다. 이 기능은 개발중에 코드 변경이 감지되면 웹 서버를 자동으로 다시 시작해주는 편리한 기능이긴 하지만 multiprocessing과 함께 사용할때 위와 같은 오류가 발생한다.

위 문제는 Flask를 실행할때 자동 새로고침 기능을 비활성화면 해결된다.

app.run(debug=True, use_reloader=False)