Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 26139|Odgovoriti: 0

[Vir] [Vaja] Odpravite težavo z zagonom Java aplikacije na Linux strežniku in prekinitvijo klica

[Kopiraj povezavo]
Objavljeno na 9. 09. 2021 10:52:50 | | | |
Zjutraj odprem spletno stran razvojnega okolja, seznam menijev ni naložen, in ugotovim, da je res težava z vmesnikom.

Prijavite se na strežnik, da si ogledate Java aplikacijoPreusmeri izhodne datoteke in dnevnike, je ugotovil, da je zadnji čas v logu ostal pri 21:15, kot je prikazano na spodnji sliki:



Preverite sistemske dnevnike

8. sep 21:30:05 centos7-dev04 jedro: Izven spomina: Kill process 32452 (java) rezultat 84 ali žrtvovanje otroka
8. sep 21:30:05 centos7-dev04 jedro: Ukinil proces 32452 (java), UID 0, total-vm:7016412kB, anon-rss:1421400kB, file-rss:0kB, shmem-rss:0kB



Če sumite, da je Linux uničil aplikacijo, jo lahko hitro odpravite z naslednjim ukazom:



Za preverjanje porabe pomnilnika je ukaz naslednji:



Prelazzgornji ukaz, nato pa tipka mKljuči, razvrščeni glede na pomnilnik, ki ga je uporabil proces, kot je prikazano na spodnji sliki:

PID: ID procesa
UPORABNIK: Lastnik procesa
PR: Prioriteta procesa, manjša kot je prioriteta, večja je prioriteta za izvedbo
NInice: Value
VIRT: Virtualni pomnilnik, ki ga zaseda proces
RES: Fizični spomin, ki ga zaseda proces
SHR: Skupni pomnilnik, ki ga uporablja proces
S: Stanje procesa. S označuje hibernacijo, R označuje tek, Z označuje zastoj, N pa pomeni, da je prioriteta procesa negativna
%CPU: Stopnja porabe procesorja, ki ga uporablja proces
%MEM: Odstotek fizičnega pomnilnika in skupni pomnilnik, ki ga porabi proces
TIME+: Skupni čas procesorja, ki ga porabi proces po zagonu, torej kumulativna vrednost časa porabe procesorja.
UKAZ: Ime ukaza za zagon procesa



Razlog, da se je aplikacija prekinila, je bil, ker je strežniku zmanjkovalo pomnilnika, Linux pa je po nekaterih pravilih samodejno ukinil Java aplikacijo, saj Java aplikacija zaseda zelo veliko pomnilnika.

Lahko preverite, katera Java aplikacija je specifična z naslednjim ukazom:



rešitev

1. Povečajte strežniški pomnilnik
2. Omejitev uporabe pomnilnika za Java aplikacije
3. Migracijo nekaterih Java aplikacij na druge strežnike





Prejšnji:Linux Overlay datotečni sistem v Dockerju
Naslednji:Priporočeni sta dve orodji za analizo Docker slikovne plasti
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com