Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 26139|Відповідь: 0

[Джерело] [Практика] Вирішіть проблему запуску Java-додатку на сервері Linux і відкладання слухавки

[Копіювати посилання]
Опубліковано 09.09.2021 10:52:50 | | | |
Відкрийте сайт середовища розробника вранці, меню не завантажується, і виявляю, що справді є проблема з інтерфейсом.

Увійдіть на сервер, щоб переглянути Java-додатокПеренаправляйте вихідні та лог-файли, виявив, що останній логарифмічний час залишався 21:15, як показано на рисунку нижче:



Перевірте системні журнали

8 вересня 21:30:05 centos7-dev04 ядро: З пам'яті: Вбити процес 32452 (java) бал 84 або жертвувати дитину
8 вересня 21:30:05 ядро centos7-dev04: Вбито процес 32452 (java), UID 0, total-vm:7016412kB, anon-rss:1421400kB, file-rss:0kB, shmem-rss:0kB



Якщо ви підозрюєте, що додаток був знищений Linux, ви також можете швидко його діагностувати, використавши таку команду:



Для перевірки використання пам'яті команда виглядає так:



Перевалtop command, а потім введіть mключі, відсортовані відповідно до пам'яті, яку використовує процес, як показано на рисунку нижче:

PID: ID процесу
КОРИСТУВАЧ: Власник процесу
PR: Пріоритет процесу, чим менший пріоритет, тим більший пріоритет потрібно виконати
Нініса: Цінність
VIRT: Віртуальна пам'ять, зайнята процесом
RES: Фізична пам'ять, зайнята процесом
SHR: Спільна пам'ять, що використовується процесом
S: Стан процесу. S означає сплячку, R — запуск, Z — глухий кут, а N — що пріоритет процесу від'ємний.
%CPU: Коефіцієнт використання процесора, що використовується процесом
%MEM: Відсоток фізичної пам'яті та загальної пам'яті, використаної процесом
TIME+: Загальний час процесора, витрачений процесом після його запуску, тобто сукупне значення часу використання процесора.
COMMAND: Ім'я команди запуску процесу



Причина, чому додаток зависав, полягала в тому, що сервер закінчувався без пам'яті, а Linux автоматично вибивав Java-додаток згідно з певними правилами, адже Java-додаток займає дуже велику кількість пам'яті.

Ви можете перевірити, який саме Java-додаток є специфічним, використовуючи наступну команду:



рішення

1. Збільшити пам'ять сервера
2. Обмежити використання пам'яті для Java-додатків
3. Мігрувати деякі Java-додатки на інші сервери





Попередній:Файлова система Linux Overlay у Docker
Наступний:Рекомендується два інструменти для аналізу шару зображень Docker
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com