← Software

NGINX

A high-performance web server, reverse proxy, and load balancer.

NGINX logo

NGINX uses an event-driven, non-blocking I/O model that lets a single worker process handle tens of thousands of concurrent connections with a small memory footprint. This was a substantial improvement over Apache HTTP Server's process-per-request or thread-per-request model when NGINX appeared in the mid-2000s. The architecture is now standard for modern web servers; NGINX itself remains one of the most widely-deployed implementations.

NGINX is commonly deployed as a reverse proxy and TLS terminator in front of application servers — Node.js, Python's WSGI, Ruby's Unicorn, Go web apps, Java application servers — where it handles connection management, TLS, static-file serving, gzip/brotli compression, and load balancing. Caching, rate limiting, and access control round out the typical set of front-end concerns it handles.

Igor Sysoev released NGINX in 2004 to solve the C10k problem (handling ten thousand concurrent connections on a single box) at Rambler, a Russian search portal. The company NGINX Inc. was acquired by F5 Networks in 2019. The open-source codebase remains BSD-2-Clause, with NGINX Plus (the commercial version) adding features like dynamic configuration reload and live metrics. The newer Angie fork, which started in 2022 by former NGINX core developers, continues the open-source line under a slightly different governance model.

License: BSD-2-Clause

Category: Networking

Website: https://nginx.org/

Install

Debian/Ubuntu: sudo apt install nginx
Fedora/RHEL:   sudo dnf install nginx
Arch:          sudo pacman -S nginx
macOS:         brew install nginx

Authors

  • Igor Sysoev (creator, 2004)
  • F5 NGINX team and contributors
PreviousNextcloud NextNim

This site is currently in Beta. Contact: Chris Paton

Textbook of AI · Textbook of Usability · Textbook of Digital Health

Auckland Maths and Science Tutoring