Norėdami nustatyti optimalų darbuotojo procesų skaičių pagal konkrečią sąranką, atlikite šiuos veiksmus:
1. Nustatykite procesoriaus branduolių skaičių:
- Naudokite komandą „lshw“, norėdami parodyti aparatinės įrangos informaciją ir nustatyti jūsų sistemoje galimų procesoriaus branduolių skaičių[2].
2. Nustatykite darbuotojų procesų skaičių:
- NGINX konfigūracijos faile nustatykite direktyvą „worker_processes“ į procesoriaus branduolių skaičių. Pavyzdžiui, jei jūsų sistemoje yra 4 procesoriaus branduoliai, nustatykite „darbuotojo_procesai“ į 4[1][2].
3. Įvertinkite serverio našumą:
- Stebėkite savo serverio našumą ir koreguokite darbuotojų procesų skaičių pagal procesoriaus branduolių skaičių. Taip užtikrinama, kad kiekvienas darbuotojo procesas vyktų atskirame procesoriaus branduolyje, o tai padidina našumą[1].
4. Apsvarstykite papildomus veiksnius:
- Jei jūsų serveryje yra keli procesoriaus branduoliai, galbūt norėsite nustatyti darbininkų procesų skaičių taip, kad jis būtų kelis kartus didesnis nei procesoriaus branduolių skaičius, kad galėtumėte efektyviai apdoroti didelius ryšius[1].
- Jei jūsų serveris turi daug ryšių, gali tekti pakoreguoti nustatymą „darbuotojo_ryšiai“, kad būtų galima apdoroti daugiau vienu metu esančių ryšių[2].
Atlikdami šiuos veiksmus, galite nustatyti optimalų darbuotojo procesų skaičių jūsų konkrečiai sąrankai, užtikrindami efektyvų užklausų tvarkymą ir optimalų serverio našumą.
Citatos:[1] https://www.cloudpanel.io/blog/nginx-performance/
[2] https://www.cloudbees.com/blog/tuning-nginx
[3] https://stackoverflow.com/questions/55620337/nginx-worker-processes-better-to-have-1-or-more-processes-for-single-cpu
[4] https://www.linkedin.com/pulse/guide-adjusting-worker-processes-nginxconf-optimal-muhammad-ali-akbar-yazrf
[5] https://serverfault.com/questions/787919/optimal-value-for-nginx-worker-connections