Arno Moonens
Arno Moonens

Reputation: 1213

Handling multiple requests in Flask

My Flask applications has to do quite a large calculation to fetch a certain page. While Flask is doing that function, another user cannot access the website, because Flask is busy with the large calculation.

Is there any way that I can make my Flask application accept requests from multiple users?

Upvotes: 74

Views: 93801

Answers (2)

Martijn Pieters
Martijn Pieters

Reputation: 1124538

Yes, deploy your application on a different WSGI server, see the Flask deployment options documentation.

The server component that comes with Flask is really only meant for when you are developing your application; even though it can be configured to handle concurrent requests with app.run(threaded=True) (as of Flask 1.0 this is the default). The above document lists several options for servers that can handle concurrent requests and are far more robust and tunable.

Upvotes: 102

LtWorf
LtWorf

Reputation: 7608

For requests that take a long time, you might want to consider starting a background job for them.

Upvotes: 3

Related Questions