Question 9
Pratham builds a Flask route that generates a PDF report and sends it to the user via email, all inside the route handler without using Celery. A tester notices that the browser takes about 12 seconds to respond, and during that time other users are unable to use the app normally. Which of the following correctly explain this behaviour and what Celery would change?
Flask handles one request at a time per worker, so the long-running task blocks the entire process until it finishes.
Other users' requests are queued and only served after the heavy task completes, making the app feel unresponsive.
With Celery, Flask immediately returns a response to the user while the report generation and email sending happen inside a separate Celery worker process in the background.