In high traffic environments it generally make sense to “dedicate” a core to each RX and TX queue you have on the NIC – this way you lower the chances of a single core being overloaded from handling network and thus degrading performance.
And then at same time within nginx, map the individual processes to other cores. So, let’s say say you have 8 cores and 1 RX and 1 TX queue: Core 0: RX queue Core 1: TX queue Core 2 to 7: nginx processes You’d then set nginx to 6 workers (if you’re not running other stuff on the box). Now, in your case with php-fpm in the mix as well, controlling that can be hard ( not sure if you can pin php-fpm processes to cores ) – but for nginx and RX/TX queues, it’s for sure possible. From: nginx <[email protected]> on behalf of Raffael Vogler <[email protected]> Reply-To: "[email protected]" <[email protected]> Date: Thursday, 11 January 2018 at 11.55 To: "[email protected]" <[email protected]> Subject: Re: 2 of 16 cores are constantly maxing out - how to balance the load? Or would it make sense (if possible at all) to assign two or three more cores to networking interrupts?
_______________________________________________ nginx mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx
