| What purpose of the article if in the documentation at nginx.org/en/docs/ you can find the same? And, btw, you are giving bad advices. You are wrong here:
"By default, nginx sets our keep-alive timeout to 75s (in this config, we drop it down to 10s), which means, without changing the default, we can handle ~14 connections per second. Our config will allow us to handle ~102 users per second." No, the keepalive connections doesn't limit nginx anyhow. Nginx closes keepalive connections when it reaches connection limit. "gzip_comp_level sets the compression level on our data. These levesls can be anywhere from 1-9, 9 being the slowest but most compressed. We’ll set it to 6, which is a good middle ground." No, it's not "middle ground". It kill performance of your server. With 6 you will get 5-10% better compression, but twice slowness. "use epoll;" What's the purpose of this? The docs says: "There is normally no need to specify it explicitly, because nginx will by default use the most efficient method." "multi_accept tells nginx to accept as many connections as possible after getting a notification about a new connection. If worker_connections is set too low, you may end up flooding your worker connections. " No, you have completely misunderstood this directive. It isn't related to worker_connections at all. |
"send_timeout 2;" Mobile clients from another continent will "thank you" for this setting when they cannot open your site.
"error_log /var/log/nginx/error.log crit;" A way to be unaware when something is wrong with your server. Nginx produces not only "crit" errors, but a bunch of very useful warnings, that need attention.
"limit_conn addr 10;" Chrome and Firefox usually open more than 10 connections. And btw, have you ever heard about NAT?
"Most browsers will open up 2 connections" 15 years ago this was true.