Monit hufuatilia kurasa zinazobadilika za tovuti na kugundua kuwa msimbo wa hali si 200, na huwasha upya kiotomatiki php8.3-fpm.

🚀 Wakati ukurasa unaobadilika kwenye tovuti una msimbo wa hali usio wa 200 kwa ghafla, PHP8.3-FPM inawezaje kujiponya kwa sekunde?​

🔥 PHP90-FPM usanidi wa kuokoa maisha ambao 8.3% ya waendeshaji hawajui! Mafundisho kwa vitendo ya mfumo wa kujiponya wa ukurasa wa Monit.

Je, unafikiri kufuatilia uhai wa mchakato wa PHP-FPM inatosha? Makosa kabisa!
Wakati PHP-FPM kwenye seva inapotea ghafla, kuangalia tu maisha ya mchakato ni kama kutumia kipima joto kupima saratani - haipati shida mbaya hata kidogo.

Nimeona watu wengi sana wakilindaphp-fpm.sockUfuatiliaji ulikuwa wa kuridhika, na kwa sababu hiyo, tovuti kwa muda mrefu imekuwa makaburi 404. Leo nataka kusambaratisha udanganyifu huu wa operesheni na matengenezo na kukuonyesha ukweli wa umwagaji damu: mchakato wa moja kwa moja ≠ huduma ya kawaida.

🌪️ Hali mbaya: Soketi imeunganishwa, lakini tovuti imekufa

hakikaE-biasharaUfuatiliaji wa tovuti ulionyesha kuwa mchakato wa PHP-FPM ulikuwa ukiendeshwa kawaida, lakini watumiaji walikuwa wakilalamika kuhusu kushindwa kwa malipo.

Baada ya utaftaji mrefu, niligundua kuwa uvujaji wa kumbukumbu kwenye maktaba ya mtu wa tatu ulisababisha mchakato wa PHP kuwa hai lakini hauwezi kabisa kushughulikia maombi.

Kwa wakati huu, kutegemea ugunduzi wa soketi pekee ni kama kuangalia mapigo ya zombie - huwezi kupata ubongo hata kidogo.kifo.

💥 Suluhisho la ufuatiliaji wa kuua maradufu ambalo hupotosha utambuzi

Tupa ufuatiliaji huo wa kizamani wa mwelekeo mmoja! Wataalamu bora wote hutumia mkakati wa kukaba koo mara mbili wa safu ya mchakato + safu ya biashara.

Monit hufuatilia kurasa zinazobadilika za tovuti na kugundua kuwa msimbo wa hali si 200, na huwasha upya kiotomatiki php8.3-fpm.

Mipangilio ifuatayo itaruhusu seva yako kujiponya haraka kuliko operesheni na wafanyikazi wa matengenezo wanaweza kuinuka kutoka kitandani shida zinapotokea:

check process php8.3-fpm with pidfile /run/php/php8.3-fpm.pid
    start program = "/usr/sbin/service php8.3-fpm start"
    stop program  = "/usr/sbin/service php8.3-fpm stop"
    if failed unixsocket /run/php/php8.3-fpm.sock then restart
    if failed 
        host www.chenweiliang.com 
        port 443
        protocol https
        request "/wp-login.php"
        status = 200
        hostheader www.chenweiliang.com
        for 3 cycles
    then restart
    if 5 restarts within 5 cycles then exec "/usr/bin/systemctl restart hestia"

🔍 Maelezo mabaya yamefichwa katika vigezo

hostheaderVigezo ni hirizi zinazookoa maisha katika matukio ya kusawazisha CDN/mzigo. Bila hizo, ni kama kutafuta mpiganaji wa siri aliye na miwani ya kuona usiku - huwezi kupata hali ya kusimamishwa iliyosababishwa na kukosa kichwa cha Mwenyeji.

for 3 cyclesMuundo huu wa kipindi cha bafa huepuka kikamilifu chanya za uwongo zinazosababishwa na msukosuko wa mtandao. Ni kama kusakinisha kifaa cha kufyonza mshtuko kwenye mfumo wa uchunguzi ili kuzuia mtikisiko wa mkono usiwashe kitufe cha nyuklia.

• Mwishoexec "/usr/bin/systemctl restart hestia"Ni hatua ya mwisho ya muuaji. Wakati PHP-FPM ilishindwa kufufuka kwa mara 5 mfululizo, niligeuza jedwali na kuwasha tena paneli nzima ya upangishaji. Huu ni ujanja nilioiba kutoka kwa utaratibu wa kivunja mzunguko wa mfumo wa biashara wa Wall Street.

🚨 Masomo tuliyojifunza kutokana na maumivu na mateso: Mitego 3 inayoweza kukufanya ushindwe

  1. Ulaghai wa cheti cha SSL: Baada ya uboreshaji,protocol httpsKutoiandika husababisha ufuatiliaji kila wakati kuiona vibaya kama kawaida. Baadaye niligundua kuwa toleo la zamani la Monit halikuthibitisha cheti kwa chaguo-msingi, ambayo ilinifanya kupoteza bonasi yangu ya mwisho wa mwaka.
  2. Ukurasa wa kuingia 401 mtego: sahau kuongeza unapofuatilia ukurasa wa kuingiaBasic AuthenticationKama matokeo, kila jaribio linasababisha kuanza tena. Ni kama kumwagilia bustani kwa bomba la kuzima moto - lenye nguvu ya kutosha lakini si sahihi kabisa
  3. Ingia Black Hole: Mara moja/var/log/monit.logSaizi ilipoongezeka hadi 50G, tuligundua kuwa mjinga fulani alikuwa ameweka muda wa utambuzi kuwa sekunde 1. Kumbuka, logi ya ufuatiliaji yenyewe ndiyo kitu kinachohitaji kufuatiliwa!

💡 Hatua za uthibitishaji na utatuzi

  1. Ukaguzi wa sintaksia ya usanidi:
    monit -t
    
  2. Mipangilio ya upakiaji kupita kiasi:
    monit reload

Mtihani wa Mwisho

  1. Mtihani wa Kujiua: Moja kwa mojakill -9Ua mchakato wa PHP-FPM na uangalie rekodi za ufufuo kwenye logi ya ufuatiliaji. Inahisi kama kutazama filamu ya zombie!
  2. Sindano ya sumu: Rekebisha ukurasa wa kuingia kwa makusudi ili kurudisha msimbo wa hali ya 503 na uangalie ikiwa mfumo wa ufuatiliaji unaweza kushambulia kwa usahihi. Ninaita njia hii "chanjo ya digital" - kuingiza kiasi kidogo cha virusi kwenye mfumo mapema ili kulazimisha majibu ya kinga ya mfumo wa ufuatiliaji. Wakati kengele zinawaka sana na huduma zikijiponya zenyewe, utaona utashi wa jinsia zaidi kuishi katika ulimwengu wa kanuni unaowaka!

发表 评论

Barua pepe yako haitachapishwa. 必填 项 已 用 * 标注

Kitabu ya Juu