All quizzes
Free quiz · 20 questions in the bank

Gunicorn quiz

Test your Gunicorn knowledge with a free interactive quiz — 20 questions with answers and explanations. No signup needed to play.

Question 1/12Score 0

How does Gunicorn typically pick up code changes after a deployment, in terms of worker restarts?

In this round
  1. How does Gunicorn typically pick up code changes after a deployment, in terms of worker restarts?
  2. What is the purpose of Gunicorn's worker timeout setting (`--timeout`)?
  3. What does WSGI stand for, and what problem does it solve?
  4. Why can't Python's built-in development server (e.g. Flask's `app.run()`) typically be used directly in production?
  5. Why might a team switch from Gunicorn's sync workers to an async worker class like `gevent` or `eventlet`?
  6. Why does Gunicorn's documentation commonly recommend a rule of thumb like `(2 x $num_cores) + 1` for the number of sync workers?
  7. Why might CPU-bound Python workloads (e.g. heavy data processing per request) see limited benefit from simply adding more Gunicorn sync workers on a machine with a fixed number of cores?
  8. What is a common alternative WSGI server to Gunicorn in the Python ecosystem, and how do they broadly compare?
  9. How does Gunicorn typically handle logging of access and error information?
  10. Why is having Nginx (or another reverse proxy) buffer slow client connections in front of Gunicorn's sync workers considered good practice?
  11. How does Gunicorn typically fit into a common production deployment stack alongside Nginx?
  12. What does a "graceful restart" (e.g. sending `SIGHUP` to the Gunicorn master process) attempt to achieve?
Gaps to close?
Read the curated Gunicorn notes — core concepts, patterns, interview prep.
Gunicorn notes

More quizzes

.NETAccessibilityAgileAgile MethodologyAirflowAkka