Book Image

NGINX Cookbook

By : Tim Butler
Book Image

NGINX Cookbook

By: Tim Butler

Overview of this book

NGINX Cookbook covers the basics of configuring NGINX as a web server for use with common web frameworks such as WordPress and Ruby on Rails, through to utilization as a reverse proxy. Designed as a go-to reference guide, this book will give you practical answers based on real-world deployments to get you up and running quickly. Recipes have also been provided for multiple SSL configurations, different logging scenarios, practical rewrites, and multiple load balancing scenarios. Advanced topics include covering bandwidth management, Docker container usage, performance tuning, OpenResty, and the NGINX Plus commercial features. By the time you've read this book, you will be able to adapt and use a wide variety of NGINX implementations to solve any problems you have.
Table of Contents (14 chapters)

Tuning worker processes and connections

One of the first limits you'll find with running NGINX at scale is the defaults for the worker processes and connections. At a low level, an NGINX worker process is the dedicated event handler for processing all requests.

The defaults for most NGINX installations are 512 worker connections and 1 worker process. While these defaults work in most scenarios, a very busy server can benefit from adjusting these levels to suit your environment. There is no one-size-fits-all scenario when it comes to the correct values, so it's important to know where you're hitting limits and therefore, how to adjust to overcome them.

Setting the limits too high can result in increased memory and CPU overhead, which would have the overall effect of reduced performance rather than increasing it. Thankfully, NGINX will log when it hits certain limits...