Kui Node.js rakendus ei käivitu ja cPaneli Ressursikasutus näitab Number of Processes piiri täis (näiteks 250 / 250), on taustale jäänud vanad protsessid või liiga palju töölõimi. Ava Node.js-i rakenduse seadistus, peata rakendus (Stop) ja käivita uuesti (Start). Kui piir jääb täis, sulge orbprotsessid või pöördu klienditoe poole.
Lühidalt
queryCompiler + driverAdapters, mis vähendab töölõimede arvu.Näitaja Number of Processes (tehnilise nimega nproc) ei loe ainult programme. See loeb ka nende sisemisi töölõimi (threade).
Node.js rakendused võivad hoida korraga kümneid kuni sadu töölõimi. Eriti kehtib see Next.js-i kohta koos raskete sõltuvustega, näiteks PDF-ide loomiseks kasutatav peata Chrome, Playwright või Puppeteer.
Kui rakendus käivitatakse mitu korda ilma eelmist peatamata (näiteks käsurealt käsitsi, mitte cPaneli kaudu), jäävad vanad protsessid taustale tööle. cPanel ei pruugi neid enam hallata ja nupp Stop neid ei sulge.
Need „orvuks“ jäänud protsessid täidavad piiri ja takistavad uue versiooni käivitumist.
Osa teeke loob töölõimi serveri protsessorituumade arvu järgi. Näiteks Prisma päringumootor käivitab kuni ühe töölõime iga tuuma kohta.
Meie suuremates, 128-tuumalistes serverites tähendab see, et üksainus rakenduse instants võib kasutada ligikaudu 140 lõime ehk suurema osa kogu piirist.
Kui selline rakendus töötab korraks kahe instantsina (näiteks uue versiooni paigalduse ajal), saab piir kohe täis. Kättesaamatuks muutuvad ka kõik teised sama konto veebilehed.
Mida teha
queryCompiler + driverAdapters (alates Prisma versioonist 6.7), mis ei kasuta eraldi päringumootorit. Lõimede arv langeb kümnekonna peale ja rakendus mahub kenasti piiri sisse.cPanelTarkvaraNode.js-i rakenduse seadistus
Ava Node.js-i rakenduse seadistus, peata rakendus (Stop) ja käivita uuesti (Start). Sageli see lahendab olukorra.
Kui Terminal ei avane veaga Unable to fork, ongi põhjus selles, et protsesside piir on täis. Ka Terminal vajab uut protsessi. Vabasta esmalt protsesse (eelmine samm) ja proovi siis uuesti.
Kui Node.js-i rakenduse seadistus näitab olekut stopped, aga piir on ikka täis, on taustal „orvuks“ jäänud protsessid, mida cPanel ise sulgeda ei saa.
Kui Sul on SSH-ligipääs ja käsurea kasutamise oskus, saad need ise leida ja sulgeda (vaata allpool „Kogenud kasutajale“).
Kui SSH-ligipääsu pole või Sa pole kindel, pöördu klienditoe poole ning anna teada oma domeen ja rakenduse nimi. Vabastame need protsessid serveri tasandil.
Eeltingimus: Sul on SSH- või Terminali ligipääs ja käsurea kasutamise oskus. Kui neid pole, jäta see osa vahele ja pöördu klienditoe poole. Eelmises punktis kirjeldatud juhis jääb kehtima.
Tähtis
Sulge protsess ainult siis, kui rakendus on cPaneli jaotises Node.js-i rakenduse seadistus olekus stopped ja oled kindel, et tegu on üleliigse, orvuks jäänud isendiga. Vale protsessi sulgemine võib katkestada töötava rakenduse või veebilehe.
Olek stopped ei garanteeri, et ühtegi aktiivset isendit pole: veebiserver võib rakenduse liikluse saabudes uuesti käivitada. Kui Sul on vähimgi kahtlus, ära sule protsessi ise, vaid pöördu klienditoe poole.
Kontrolli, et rakendus on jaotises Node.js-i rakenduse seadistus olekus stopped.
Leia orbprotsess. Käivita Terminalis: ps -u <kasutajanimi> -o pid,etime,cmd | grep lsnode
Veerg etime näitab, kui kaua protsess on töötanud. Pikk tööaeg viitab rippuma jäänud isendile. Pane kirja selle protsessi PID (esimene number).
Sulge protsess: kill <PID>. Kui protsess ei reageeri, kasuta käsku kill -9 <PID>.
Kontrolli cPaneli jaotises Ressursikasutus, et Number of Processes väärtus on langenud. Seejärel käivita rakendus jaotises Node.js-i rakenduse seadistus uuesti (Start).
Kui Terminal ei avane (veateade Unable to fork)
Sel juhul on protsesside piir juba täis ja ka kill vajab omakorda uut protsessi. Tee esmalt jaotises Node.js-i rakenduse seadistus Stop → Start, et protsesse vabastada, või pöördu klienditoe poole.
Käivita ja peata rakendus ainult cPaneli kaudu. Node.js-i rakenduse seadistus all on iga rakenduse real nupud Start, Stop ja Restart. Ära käivita rakendust käsitsi taustal, sest nii jäävad protsessid haldamatuks ja kogunevad.
Uue versiooni paigaldamisel järgi kindlat järjekorda: peata rakendus (Stop) → laadi uued failid üles → Run NPM Install → käivita (Start). Nii asendub üks instants puhtalt ja vanu protsesse alles ei jää.
Loo build lokaalselt. Next.js puhul käivita ehitamine oma arvutis ja laadi serverisse juba valmis failid. See väldib nii mälupiiri ületamist kui ka liigsete protsesside teket.
Hoia sõltuvused kerged. Väldi serveris ilma graafilise liideseta brauseri (nt Chrome, Playwright, Puppeteer) jooksutamist näiteks PDF-ide loomiseks. See hoiab avatuna palju töölõime. Eelista kergemaid teeke.
Jälgi protsesside arvu cPaneli Ressursikasutus alt.
Kui Sul on mitu Node.js rakendust, mis peavad korraga pidevalt töötama, ja piir saab regulaarselt täis, võib jagatud majutuse protsesside ülempiir jääda kitsaks. See piir on jagatud majutuses ühine ja fikseeritud.
Jagatud majutus sobib kõige paremini valmis rakenduse stabiilseks tööks. Kui arendad aktiivselt (teed sagedasi builde, laadid tihti uusi versioone ja taaskäivitad rakendust mitu korda päevas), soovitame arendustööd teha oma arvutis või eraldi arenduskeskkonnas. Jagatud majutusse laadi ainult valmis versioon.
Hea teada
Kui Sinu rakendus vajab palju töölõimi või arendustempo on püsivalt kõrge, sobib Sulle paremini virtuaalserver (VPS), kus protsessipiirangut ei ole. Meie klienditugi aitab Sul sobiva lahenduse leida.