Tuhinga Tuhinga
Kua kitea ohorere koe i te mahi kua piki haere te whakamahi CPU a Nginx? Ko te kino ake, ko nga mahi a nga kaimahi maha a Nginx kei te pau nga rauemi penei i te porangi i nga wa katoa ka titiro au ki nga mahi.
Ka kite koe i tenei ahuatanga, ka wera tou mahunga, kare e taea e koe te tangi: "E toku Atua, ka pahū te tūmau kaua e māharahara, ehara i te mea ka "oti" to tūmau? , engari Nginx Me mahi koe i te arotautanga matawhānui!
Te tātari i nga take o te nui o te kawenga Nginx

Tuatahi, me maarama tatou,He aha i ohorere ai te "ngenge" a Nginx?He maha nga take o te raru, kaua e mataku, me rapu tahi tatou i raro nei.
1. whirihoranga koretake
I roto i te kōnae whirihoranga Nginx, ko te mea tino nui worker_processes. Ka whakatauhia e tenei tawhā te maha o nga tukanga i timatahia e Nginx.
- Mena ka whirihorahia e koe he iti rawa nga mahi a nga kaimahi, ka piki ake te uta o te PTM ki te nui rawa te whirihora, ka iti te mahara.
- Me rapu e koe he tohu toenga, hei tauira,Tautuhia nga tukanga_kaimahi ki te 1 ki te 2 nga wa te maha o nga matua CPU.
- Mena kei a koe nga 4 core ka ngana
worker_processes 4Whakaritea tika ranei kiauto.
2. Ka piki haere nga haerenga
I etahi wa ka piki ohorere te uta a Nginx ehara i te mea i he koe, engari na te nui rawa o nga haerenga.Ko te nui o nga tono urunga ka paopao te mahi a te kaimahi Nginx., ko nga tukanga katoa ka nui te utaina, ka ki tonu te PTM me te mahara. I tenei wa, ka hiahia koe ki te whakapai ake i nga rauemi tūmau, penei i te whakanui ake i te maha o nga matua CPU, te whakanui ake ranei i te mahara. Ae ra, he whakamaharatanga ano tenei: kaua e wareware ki te whakaaro ki te whakaheke i te CDN, ki te whakataurite kawenga ranei.
3. I tutuki nga whakaeke kino
Ko te "tino rongonui" i runga i te Ipurangi ehara i te mea pai i nga wa katoa. Mena ka kitea e koe he tino nui te whakamahinga o te PTM me te take o te tono IP he hihira, tera pea kei te mamae to paetukutuku i te whakaeke DDoS. I tenei wa,Me toha koe i te papangaahi me te whakawhāiti tonu i te auau uru, penei i te whakamahi i te waahanga here o naianei ka tae mai me Nginx, te whakatu ranei i tetahi rarangi pango IP.
Me pehea te whakaoti i te raruraru o te whakamahinga mahara nui o te tukanga Nginx?
Na ko te patai, he aha te mahi a nga kaimahi Nginx i nui ai nga rauemi? Me timata me te whirihoranga me te arotau i te taahiraa ma te taahiraa.
Tikanga whirihora
Whakatuwherahia te kōnae whirihoranga Nginx: Ko te tikanga, ko te konae whirihoranga matua o Nginx kei te
/etc/nginx/nginx.conf.Whakatuu
worker_processes: I kitea i roto i te konae whirihorangaeventsporaka, tautuhingaworker_processesuara. ki te koreeventsporaka, me hanga e koe tetahi.nginx events { worker_connections 1024; use epoll; # 或者适用于操作系统的其他事件模型 }
1. Whakaritea nga hononga_kaimahi
nginx worker_connections Ka whakatauhia e te tawhā te maha o nga hononga ka taea e ia mahi kaimahi te whakahaere. Mena he iti rawa, ka pa ki te mahi concurrency;
Me pehea te tatau i te uara e tika ana?
Ki te whakaaro kei a koe he PTM 4-matua me te 16GB o te RAM, he timatanga haumaru worker_connections 4096.
Engari mena he nui te hokohoko o to paetukutuku, whakaarohia te whakanui ake i tenei uara ki te 8192 kia mohio ai ka taea e ia tukanga te whakahaere i nga tono nui.
events {
worker_connections 8192;
}
Ma tenei ara, ka tino pai ake te mana tukatuka o Nginx.
2. Whakaritea keepalive_timeout
Ko tetahi atu tohu matua mo Nginx ki te hapai i nga tono ko keepalive_timeout.
Ma tenei tautuhinga e whakatau te roa o te hononga o te kiritaki ki te tūmau ka taea te pupuri.
Mena he roa rawa te tautuhi, ka nui rawa nga rauemi hononga..
Ka taea e koe te ngana keepalive_timeout Whakaritea ki te 15 hēkona hei pupuri i te hononga me te tuku rauemi.
keepalive_timeout 15;
3. Arotauhia nga tepe whakaahuatanga konae
Ma te taunoa,Linux He rohe te punaha ki te maha o nga kaiwhakaahua konae ka taea te whakatuwhera ma ia mahinga.
Mena ka hiahia a Nginx ki te tukatuka i te maha o nga konae (penei i nga rauemi pateko), ka kite pea koe i tetahi hapa mai i Nginx, ka akiaki "too many open files‖.
ka taea e koe te paahi worker_rlimit_nofile Whakanuia te tepe whakaahuatanga kōnae, hei tauira ka whakatakotoria ki te 65535.
worker_rlimit_nofile 65535;
4. Whakahohea te keteroki me te gzip
Ko te keteroki me te kōpeketanga e rua nga matua ki te arotautanga mahi paetukutuku.
Ma te whakaahei i te mahi keteroki a Nginx, ka taea te pupuri i nga rauemi pateko (penei i nga whakaahua me nga konae JS) ki te mahara., na reira ka tino whakaitihia te uta i runga i te tūmau.
I tua atu, ka taea e te huri i te mahi kōpeketanga gzip te whakaiti i te nui o nga raraunga ka tukuna me te whakapai ake i te tere o te paetukutuku.
gzip on;
gzip_types text/plain application/javascript;
5. Tātarihia te whakamahi rauemi Nginx
Ka mutu, mena kua oti i a koe nga arotautanga katoa o runga ake nei engari he maha tonu nga PTM kei a Nginx, ka hiahia pea koe ki te whakamahi i etahi taputapu mo te tātari hohonu.
whakamahi top 或 htop Tirohia te kohi rauemi mo te wa-tūturu o tetahi tukanga, haere strace Aroturuki waea pūnaha, whakamahi ranei nmon Hangaia he ripoata mahi. Ma te tātari matawhānui i te mahi a Nginx ka taea e tatou te mahi tika ake.
总结
Kaua e mataku i te wa e piki ana te whakamahi CPU a Nginx. Na te whirihoranga hee, na te nui o te hokohoko ranei.
na roto i nga whakatikatika whaitake worker_processes A worker_connectionsMa te whakaahei i te keteroki, te arotau i nga waahi me nga kaiwhakaahua konae, ka taea e koe te whakaiti i te pehanga uta ki runga i a Nginx.
Ko Nginx he tūmau tukutuku kaha, ka taea e koe te mahi pai mo to paetukutuku.
Kia mahara, ka taea e koe te whakautu i nga pataiPūtaiaotikanga ki te whakaoti i te reira, te arotau i te mahi tūmau kahore he okotahi.
Aroturuki me te whakatika i te wa tika, Ko te matua ki te pupuri i te Nginx kia pai te rere. Mena ka taea e koe te mohio ki enei tikanga, ka noho haumaru to paetukutuku ahakoa he nui te hokohoko, he whakaeke kino ranei.
Te ti'aturi nei au na tenei tuhinga i whakatenatena koe, tere me te arotau i to Nginx!
Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) shared "Me aha ahau ki te nui te utaina o te PTM tūmau Nginx me te whakamahinga mahara tukatuka?" 》, awhina ki a koe.
Nau mai ki te tohatoha i te hono o tenei tuhinga:https://www.chenweiliang.com/cwl-32093.html
Hei whakatuwhera i etahi atu tinihanga huna🔑, nau mai ki te uru mai ki ta maatau hongere Telegram!
Tohaina me te pai ki te pai koe! Ko o tohatoha me o hiahia ko to matou hihiri tonu!