Košarica (0)
  • Vaša košarica je trenutno prazna

NEOSERV BLOG

Novice in nasveti iz sveta domen, gostovanja, SSL certifikatov, spletnih strani, spletnih trgovin in ostalih področij spleta.

Procesi spletnih aplikacij, kot so WordPress, OpenCart, Magento, PrestaShop in številne druge, včasih postanejo neodzivni (pravimo tudi, da se procesi “zataknejo” oz. “zaciklajo”), zaradi česar lahko spletno mesto preneha delovati. V tem primeru je proces (ali več procesov) potrebno ročno zaustaviti, kar se uredi prek terminala oz. ukazne vrstice.

Razlogi za neuspešno zaključene procese so različni, npr. težave z omrežjem, napake v bazi podatkov, napake v kodi spletne strani, konflikti zaradi uporabe preveč vtičnikov, preobremenitev paketa gostovanja in podobno. Težava običajno vodi do stanja, ko aplikacija uporablja 100 % dovoljenih hkratnih HTTP procesov, kar vodi do nedelovanja spletne strani.

Po naših izkušnjah do neuspešno zaključenih procesov največkrat pride ob (samodejnih) nadgradnjah, npr. ob posodobitvi WordPress jedra ali vtičnikov, ali ob urejanju večjih sprememb na spletni strani. Takšne situacije so sicer izjemno redke.

Kazalo

Navodila za prekinitev procesov prek ukazne vrstice

Ker se s procesi upravlja prek ukazne vrstice, morate na svojem paketu gostovanja najprej vključiti SSH dostop. To uredite v naročniškem centru Moj NEOSERV (naročniki Reseller gostovanja morate SSH omogočiti tudi znotraj WHM), s čimer dosežete, da se vam v nadzorni plošči cPanel pojavi ikona Terminal.

1. Preverite navodila za aktivacijo SSH in na svojem paketu gostovanja omogočite SSH dostop.

Moj NEOSERV - aktivacija SSH dostopa

2. Vpišite se v nadzorno ploščo cPanel, poiščite sekcijo Advanced in kliknite na ikono Terminal.

cPanel (Jupiter) - Advanced - Terminal

3. S klikom na gumb “I understand and want to proceed.” potrdite, da želite uporabiti ukazno vrstico.

cPanel - potrditev dostopa do terminala

4. Uporabite naslednji ukaz, da preverite seznam vseh aktivnih procesov, ki tečejo na vašem paketu gostovanja.

ps aux

Pozorni bodite predvsem na stolpca %CPU in %MEM, ki predstavljata odstotek celotne dodeljene procesorske moči in pomnilnika, ki ga uporablja posamezen proces. Zanimiv je tudi stolpec STAT, v katerem je zapisan status procesa (R – running, S – sleeping, Z – zombie, T – stopped, W – paging).

5. Preverite podrobnosti o določenem procesu (npr. niti (ang. threads) ali posamezne podprocese) s spodnjim ukazom.

ps -T PID

POMEMBNO: Zapis PID nadomestite z ID številko dejanskega procesa, ki se nahaja v drugem stolpcu rezultata, vrnjenega z uporabo predhodnega ukaza (ps aux).

6. Ko odkrijete, kateri proces je neodziven oz. tisti, ki povzroča težave, ga prekinite z naslednjim ukazom.

kill PID

POMEMBNO: Tudi v tem primeru zapis PID nadomestite z ID številko dejanskega procesa.

cPanel - Terminal - prekinitev zataknjenega PHP procesa

Želite prekiniti vse aktivne PHP procese, vezane na vaš cPanel račun? V tem primeru uporabite spodnji ukaz.

pkill php

Ste težavo nameravali odpraviti z odstranitvijo aplikacije? Procesi v nadzorni plošči cPanel bodo kljub odstranitvi aplikacije (npr. WordPressa) ostali aktivni, saj delujejo v delovnem pomnilniku (RAM), v katerem se bodo podatki še vedno nahajali, dokler procesi ne bodo ročno prekinjeni.

Alternativa za prekinitev vseh PHP procesov

Prekinitev vseh PHP procesov lahko dosežete tudi tako, da v nadzorni plošči cPanel spremenite PHP različico.

1. V nadzorni plošči cPanel poiščite sekcijo Software in kliknite na ikono Select PHP Version (Izberi PHP Verzijo).

cPanel (Jupiter) - Software - Select PHP Version

2. Pri nastavitvi “Current PHP version” izberite drugo PHP verzijo in spremembo potrdite s klikom na gumb Apply.

cPanel - sprememba PHP verzije

3. Ker ste s tem prekinili vse aktivne PHP procese, lahko zdaj ponovno izberete predhodno nastavljeno PHP različico in jo potrdite s klikom na gumb Apply.

Rešitev za razvijalce: prilagoditev programske kode

Naprednejši način reševanja težave je, da v svoji aplikaciji locirate del programske kode, ki povzroči, da se proces ne zaključi pravilno, nato pa programsko kodo ustrezno popravite oz. prilagodite. Ta rešitev zahteva mnogo več tehničnega znanja ter dobro poznavanje programske kode, arhitekture in posebnosti aplikacije.

Prilagoditev programske kode torej lahko uredijo razvijalci, ki skrbijo za razvoj in vzdrževanje spletne strani. Vsekakor pa je tovrstna rešitev, če je le mogoča, priporočljiva, saj se na ta način napaka v programski kodi odpravi, s čimer se prepreči, da bi ponovno prišlo do enake težave.

KOMENTARJI

KOMENTIRAJTE OBJAVO

(obvezno)
(obvezno, e-poštni naslov bo skrit)
(neobvezno)
Varnostno vprašanje, ki potrdi, da ste resnična oseba.