Apart from memory and cpu limitations, I'd like to keep in mind another number for the nginx and php-fpm setup.
If there is process.max set in /etc/php5/fpm/php-fpm.conf, the max number of php process ready for serving is limited.
However, nginx never knows about this limit and tries to find and get served by another php-fpm process.
How to limit nginx to request the same max at the same moment? (independent from cpu/ram which is discussed and explained in lots of other posts)
nginx doesn't spawn the php-fpm workers, it doesn't need to know about the limit.