json 응답을 해주는 flask 서버를 gunicorn을 이용하여 여러 개의 worker process로 돌리려고 합니다. 이 문서에서는 적정 worker process 및 threads 수가 2-4 x $(NUM_CORES)
라고 하는데, 얼마만큼의 worker process를 사용하면 좋을까요? 현재 만들고 있는 flask server에서 가장 중요한 점은 response time을 최소화하는 것이며, 구름IDE는 Premium plan을 결제하여 사용중입니다.
또한, flask server 실행시
if __name__ == "__main__":
app.run(host='0.0.0.0', port=5000, threaded=True)
위와 같이 threaded=True
옵션을 사용하고 있는데, 이 옵션을 넣으면 gunicorn 실행시 옵션에서 --threads 4
와 같이 별도로 threads 수를 지정해주지 않아도 되는지 알려주시면 감사하겠습니다.