Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 26139|Răspunde: 0

[Sursă] [Practică] Rezolvă problema de a rula o aplicație Java pe un server Linux și de a închide

[Copiază linkul]
Postat pe 09.09.2021 10:52:50 | | | |
Deschid site-ul mediului de dezvoltare dimineața, nu se încărcă o listă de meniuri și descoperă că există într-adevăr o problemă cu interfața.

Conectează-te la server pentru a vizualiza aplicația JavaFișiere de ieșire de redirecționare și fișiere de jurnal, a constatat că ultima cronografie a rămas la 21:15, așa cum se arată în figura de mai jos:



Verifică jurnalele sistemului

8 septembrie 21:30:05 centos7-dev04 kernel: Fără memorie: Kill process 32452 (java) score 84 sau sacrifice child
8 septembrie 21:30:05 nucleu centos7-dev04: Proces 32452 (java), UID 0, total-vm:7016412kB, anon-rss:1421400kB, file-rss:0kB, shmem-rss:0kB



Dacă bănuiești că o aplicație a fost ucisă de Linux, poți de asemenea să o depanezi rapid folosind următoarea comandă:



Pentru a verifica utilizarea memoriei, comanda este următoarea:



Trececomanda superioară, apoi tastează mchei, sortate în funcție de memoria folosită de proces, așa cum se arată în figura de mai jos:

PID: ID-ul procesului
UTILIZATOR: Proprietarul procesului
PR: Prioritatea procesului, cu cât prioritatea este mai mică, cu atât prioritatea este mai mare de executat
NInice: Valoare
VIRT: Memoria virtuală ocupată de proces
RES: Memoria fizică ocupată de proces
SHR: Memorie partajată folosită de proces
S: Starea procesului. S indică hibernare, R indică rulare, Z indică blocaj, iar N indică valoarea priorității procesului este negativă
%CPU: Rata de utilizare a CPU-ului folosit de proces
%MEM: Procentul de memorie fizică și memoria totală folosită de proces
TIME+: Timpul total consumat de proces după începerea acestuia, adică valoarea cumulativă a timpului de utilizare al procesorului.
COMANDĂ: Numele comenzii de pornire a procesului



Motivul pentru care aplicația s-a blocat a fost că serverul rămânea fără memorie, iar Linux a oprit automat aplicația Java conform unor reguli, până la urmă, aplicația Java ocupă o cantitate foarte mare de memorie.

Poți verifica care aplicație Java este specifică folosind următoarea comandă:



soluție

1. Creșterea memoriei serverului
2. Limitarea utilizării memoriei pentru aplicațiile Java
3. Migrarea unor aplicații Java către alte servere





Precedent:Sistem de fișiere Linux Overlay în Docker
Următor:Sunt recomandate două unelte pentru analiza stratului de imagine Docker
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com