The Gunicorn "Green Unicorn" (pronounced jee-unicorn or gun-i-corn)[2] is a Python Web Server Gateway Interface (WSGI) HTTP server. It is a pre-fork worker model, ported from Ruby's Unicorn project. The Gunicorn server is broadly compatible with a number of web frameworks, simply implemented, light on server resources and fairly fast.[3] It is often paired with Nginx, as the two have complementary features.[4]

Gunicorn
Original author(s)Benoit Chesneau
Developer(s)Gunicorn Developers
Initial release20 February 2010; 14 years ago (2010-02-20)
Stable release
22.0.0[1] Edit this on Wikidata / 16 April 2024; 7 months ago (16 April 2024)
Repository
Written inPython
Operating systemCross-platform
TypeWeb server
LicenseMIT License
Websitewww.gunicorn.org Edit this at Wikidata
Benoit Chesneau, author of Gunicorn

Architecture

edit

Server model[5]

  • Central master process to manage the workers
  • Requests are handled by worker processes
  • Components:
    • Master
    • Sync workers
    • Async workers
    • Tornado workers
    • AsyncIO workers

Features

edit

[citation needed]

  • Natively supports WSGI, web2py, Django and Paster
  • Automatic worker process management
  • Simple Python configuration
  • Multiple worker configurations
  • Various server hooks for extensibility
  • Compatible with Python 2.6+ and Python 3.2+[6]

See also

edit

References

edit
  1. ^ "Gunicorn 22.0 has been released". 16 April 2024. Retrieved 26 July 2024.
  2. ^ "Ambiguous Pronunciation · Issue #139 · benoitc/gunicorn". GitHub. Retrieved 2018-08-02.
  3. ^ Gunicorn-Python WSGI HTTP Server for UNIX
  4. ^ Gunicorn and Nginx in a Nutshell
  5. ^ "Design — Gunicorn 20.1.0 documentation".
  6. ^ "Gunicorn 19.3 Documentation: Requirements". Archived from the original on 2015-08-19. Retrieved 2015-07-29.
edit

  This article incorporates text available under the CC BY 3.0 license.