Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 12915|Odpoveď: 0

[Komunikácia s webmasterom] Použitie Alibaba Cloud SLB load balancing na riešenie využitia php-fpm CPU na viac ako 90 %

[Kopírovať odkaz]
Zverejnené 8. 5. 2015 20:22:09 | | | |
Počas sviatkov Prvého mája servisný tím aktualizoval serverové prostredie webovej stránky Yitaobang z 5,3 PHP na 5,6 PHP a po úspešnej aktualizácii bol procesor servera nabitý na viac ako 90 %, čo zostáva vysoké. Skontrolujte server a zistite, že viaceré PHP-FPM procesy spôsobujú príliš vysokú záťaž CPU, čo spôsobuje, že webová stránka nie je dostupná normálne. Opakované preinštalovanie serverového prostredia a verzie PHP, dokonca aj zmena PHP na HHVM, nedokáže vyriešiť problém vysokej záťaže CPU.


Proces prevádzky servera E-Taobang (diagram architektúry služieb): Používateľský klient → riešenie doménových mien → Baidu Cloud Acceleration Node (CDN/caching/anti-DDOS/CC útoky) → Alibaba Cloud Shield (anti-CC/DDOS/WAF útoky) → ECS zdrojový server (CSS, JS a obrázky pre CDN presmerovanie) a Alibaba Cloud Cloud Shield nemá žiadne informácie o útoku, takže ho možno úplne vylúčiť ako útok.

Keď sa pozriem na nginx logy, php-fpm logy a slow logy, neexistujú žiadne abnormálne faktory a vidím viacero TIME_WAIT informácií z príkazu netstat -n, ktorý je spôsobený IP segmentom 100.97.x.x (posledný IP segment je IP adresa poslucháckej služby Alibaba Cloud SLB).


Bez ďalších rečí, poďme sa porozprávať o konkrétnom riešení, ktoré nakoniec riešil profesionálny prevádzkový a údržbársky tím Yitao Gang (V Station Power) a výsledkom bolo, že záťaž CPU spôsobená nastaveniami monitorovania služieb SLB bola príliš vysoká.
Pôvodná SLB služba počúva HTTP protokolový port 80 a kontrola stavu http protokolu pravidelne odosiela HTTP požiadavky z viacerých hláv, čo vedie k nepretržitému prístupu na čítanie HTTP, čo spôsobí, že php-fpm dlhodobo dosiahne záťaž CPU nad 90 %, pričom konkrétna kvóta zaťaženia CPU závisí od konfigurácie ECS. Po zmene služby kontroly stavu CPU prejde do vypnutia prevádzky.

Ak nastane aj táto situácia, zmeňte konfiguráciu na kontrolu stavu SLB service listening z HTTP protokolu 80 na konfiguráciu TCP protokolu 80 nasledovne:






Predchádzajúci:Microsoft opustil IE a bol odhodlaný vytvoriť 220 000 riadkov kódu
Budúci:Mimozemská sila na ovládnutie servera
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com