Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 26139|Απάντηση: 0

[Πηγή] [Εξάσκηση] Αντιμετώπιση του προβλήματος της εκτέλεσης μιας εφαρμογής Java σε διακομιστή Linux και του τερματισμού της λειτουργίας

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 9/9/2021 10:52:50 π.μ. | | | |
Ανοίξτε τον ιστότοπο του περιβάλλοντος προγραμματιστή το πρωί, δεν φορτώνονται δεδομένα λίστας μενού και διαπιστώστε ότι υπάρχει πράγματι πρόβλημα με τη διεπαφή.

Συνδεθείτε στον εξυπηρετητή για να δείτε την εφαρμογή JavaΑνακατεύθυνση αρχείων εξόδου και αρχείων καταγραφής, διαπίστωσε ότι η τελευταία ώρα καταγραφής παρέμεινε στις 21:15, όπως φαίνεται στο παρακάτω σχήμα:



Ελέγξτε τα αρχεία καταγραφής συστήματος

8 Σεπτεμβρίου 21:30:05 centos7-dev04 πυρήνας: Εξαντλήθηκε η μνήμη: Kill process 32452 (java) score 84 ή θυσία παιδιού
Sep 8 21:30:05 centos7-dev04 kernel: Killed process 32452 (java), UID 0, total-vm:7016412kB, anon-rss:1421400kB, file-rss:0kB, shmem-rss:0kB



Εάν υποψιάζεστε ότι μια εφαρμογή έχει σκοτωθεί από το Linux, μπορείτε επίσης να την αντιμετωπίσετε γρήγορα χρησιμοποιώντας την ακόλουθη εντολή:



Για να ελέγξετε τη χρήση της μνήμης, η εντολή είναι η εξής:



Διαβαίνωεντολή top και, στη συνέχεια, πληκτρολογήστε mκλειδιά, ταξινομημένα σύμφωνα με τη μνήμη που χρησιμοποιείται από τη διαδικασία, όπως φαίνεται στο παρακάτω σχήμα:

PID: Το αναγνωριστικό της διαδικασίας
ΧΡΗΣΤΗΣ: Ο κάτοχος της διεργασίας
PR: Η προτεραιότητα της διαδικασίας, όσο μικρότερη είναι η προτεραιότητα, τόσο μεγαλύτερη προτεραιότητα πρέπει να εκτελεστεί
NInice: Αξία
VIRT: Η εικονική μνήμη που καταλαμβάνει η διαδικασία
ΑΠΕ: Η φυσική μνήμη που καταλαμβάνει η διαδικασία
SHR: Κοινόχρηστη μνήμη που χρησιμοποιείται από τη διαδικασία
Α: Η κατάσταση της διαδικασίας. Το S υποδεικνύει αδρανοποίηση, το R υποδεικνύει εκτέλεση, το Z υποδεικνύει αδιέξοδο και το N υποδεικνύει ότι η τιμή προτεραιότητας διεργασίας είναι αρνητική
%CPU: Το ποσοστό χρήσης της CPU που χρησιμοποιείται από τη διαδικασία
%MEM: Το ποσοστό της φυσικής μνήμης και της συνολικής μνήμης που χρησιμοποιείται από τη διεργασία
TIME+: Ο συνολικός χρόνος CPU που καταναλώνεται από τη διεργασία μετά την εκκίνησή της, δηλαδή η αθροιστική τιμή του χρόνου χρήσης της CPU.
ΕΝΤΟΛΗ: Το όνομα της εντολής εκκίνησης της διεργασίας



Ο λόγος για τον οποίο η εφαρμογή έκλεισε ήταν επειδή ο διακομιστής εξαντλούνταν από μνήμη και το Linux σκότωσε αυτόματα την εφαρμογή Java σύμφωνα με ορισμένους κανόνες, άλλωστε η εφαρμογή Java καταλαμβάνει πολύ μεγάλη ποσότητα μνήμης.

Μπορείτε να ελέγξετε ποια εφαρμογή Java είναι συγκεκριμένη χρησιμοποιώντας την ακόλουθη εντολή:



λύση

1. Αυξήστε τη μνήμη του διακομιστή
2. Περιορίστε τη χρήση μνήμης για εφαρμογές Java
3. Μεταφέρετε ορισμένες εφαρμογές Java σε άλλους διακομιστές





Προηγούμενος:Σύστημα αρχείων επικάλυψης Linux στο Docker
Επόμενος:Συνιστώνται δύο εργαλεία για την ανάλυση του επιπέδου εικόνας Docker
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com