NGINX.COM
Web Server Load Balancing with NGINX Plus

NGINX, at its core, is a collection of modules. Whether you are using core modules, like the http and stream (TCP/UDP) modules, or third‑party modules like GeoIP or RTMP, the module framework is the same. With the addition of dynamic module support, modules are an even better way to add functionality to NGINX.

But just because you can write a module doesn’t necessarily mean you should. There is a lot of customization that can be done in the basic NGINX configuration. Beyond that, the next simplest option is scripting. The NGINX JavaScript Module (njs) offers a higher‑performance complement to existing Lua implementations.