Overall Satisfaction with NGINX
We use NGINX as our web-facing server, behind which we have a collection of services serving various parts of our application. NGINX helps us map a single API over a variety of services, and make our API endpoints consistent across the various services. Nginx also helps with uptime, by helping us switch between various instances of the services in near real-time.
- Extremely high-performing -- NGINX is never a bottleneck.
- Easy to configure -- the configuration language is easy to learn, and allows very flexible scenarios.
- Lightweight -- it's a very small service, which is never a memory or CPU hog.
- Management tools -- Nginx has good errors, but it would be nice if it plugged into our cloud hosting infrastructure a little easier.
- Configuration error detection -- for more complex configurations, sometimes Nginx isn't overly helpful when telling us what's wrong.
- Lightweight, low CPU and memory utilization, meaning it's cheap to operate.
- It's easy to configure and industry-standard, so lots of people know how to use it.
- Helps model lots of scenarios where a more expensive or heavier-weight tool might have been used.
Nnginx is more light-weight than many other web servers, has a very expressive configuration language, easier to configure than tools like IIS and Apache, easy to install certificates for SSL, much easier to model complex routing scenarios than IIS, easier to configure than Apache. Overall, it's the leanest, best web server for services-oriented architectures (including microservices).