https://github.com/nginx/unit/issues/33
How is NGINX Unit different from Apache?
NGINX Unit uses completely different, modern architecture. It contains main, controller, router, and application processes. Each process is isolated for specific purpose, which makes Unit extremely secure and robust.
- The router process is like improved version of nginx, it contains a number of threads and each thread is like an nginx worker process. They are asynchronous and can handle millions of connections simultaneously with minimal resources.
- The controller process provides RESTful JSON API interface, which is very easy to use. All configuration changes are applied dynamically and gracefully without reloading and connections loss.
- The application processes can dynamically load any versions of any interpreters independently and simultaneously. They communicate with the router process using very fast IPC, that is based on shared memory segments and adds minimum overhead to request processing.
Thus, it is modern, fast, secure, lightweight and dynamically reconfigurable server. When Unit will be production ready and feature rich, it will significantly simplify web stack and improve scalability.