When setting up the worker_rlimit_nofile parameter worker_rlimit_nofile you must consider both worker_connections and worker_processes . You can first check the OS file descriptor using: ulimit -Hn and ulimit -Sn , which will give you hard and software restrictions for each user, respectively. You can change the OS restriction using systemctl:
sudo systemctl -w fs.file-max=$VAL
where $ VAL is the number you want to set. However, if you automate the configuration, it is easy to set it up as follows:
worker_rlimit_nofile = (worker_connections * worker_processes)*2
Workflow is set to 1 by default, but you can set it to a number less than or equal to the number of cores available on your server:
grep -c ^processor /proc/cpuinfo
source share