powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / JMX и сигналы операционной системы
9 сообщений из 9, страница 1 из 1
JMX и сигналы операционной системы
    #38085839
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый вечер!

Кто как проектирует серверные процессы? Я имею в виду мониторинг и управление.

Классика - service myservice start|stop|reload через сигналы ОС.

Или вызовы JMX ?

Поделитесь опытом.
...
Рейтинг: 0 / 0
JMX и сигналы операционной системы
    #38085868
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonДобрый вечер!

Кто как проектирует серверные процессы? Я имею в виду мониторинг и управление.

Классика - service myservice start|stop|reload через сигналы ОС.

Или вызовы JMX ?

Поделитесь опытом.

А поконкретнее? Ну с JMX приятно работать, исключая настройки на определенный порт, который может быть забанен файерволом. А так - мой личный проект, все на JMX, 5 сервачков - по одному клику перегружаются, дозагружают классы - все что в голову придет.
...
Рейтинг: 0 / 0
JMX и сигналы операционной системы
    #38086584
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конкретнее - есть аппликейшн. Никаких JBoss-ов и прочих Вебсфер. Чистый java-процесс
со своей методикой старта. Его разрабатывали с расчётом что будет старт в классической
среде Linux и заложили поддержку Sun-овских deprecated пакетов sun.misc.Signal

Нечто вроде

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
import sun.misc.Signal;
import sun.misc.SignalHandler;

public class SignalProcessor {    

    // Loggers... ApplicationsEnviroment....

    public SignalProcessor() {
    }

    public static void init() {
        
        Runtime.getRuntime().addShutdownHook(
                new Thread() {
                    public void run() {
                    }
                });

        SignalHandler handler = new SignalHandler() {
            public void handle(Signal sig) {
                if (sig.getName().equals("TERM")) {                    
                    logger.debug(sig + "  recieved");                    
                    mainAppObject.finish();
                }
                if (sig.getName().equals("USR2")) {                    
                    logger.debug(sig + "  reieved");
                    mainAppObject.reload();
                }
            }
        };
        Signal.handle(new Signal("INT"), handler);
        
        Signal.handle(new Signal("TERM"), handler);
        if (mainAppObject.OS.equals("Linux")) {
            Signal.handle(new Signal("USR2"), handler);
            logger.debug("USR2 is reload java classes\n");
        }
    }

}



Насколько я понял этот код отвечает за взаимодействие сигналов ОС и приложения.
Но код этот при сборке флудит варнингами о deprecated. И я вот думаю что было-бы лучше
если-б его дополнить обработкой JMX сигналов и когда этот patch будет
оттестирован на ОК тогда убрать из поддержки этот SignalProcessor как морально
устаревший.

Единственное что смущает - что я теряю. Возможно чел который создавал
это был неплохой спец в Linux и закладывал много фич в т.ч. скрипты
start|stop|reload которые мне поддержать в Linux-shell+JMX Будет
не так уж легко.

И надо разобраться что это за шатдаун хук и зачем он тут?

Вобщем я в размышлениях.
...
Рейтинг: 0 / 0
JMX и сигналы операционной системы
    #38087300
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть подозрение, что это вся эта шелуха имитирует Daemon: Java Service
...
Рейтинг: 0 / 0
JMX и сигналы операционной системы
    #38087311
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну шатдаун хук тут скорее всего когда-то что-то делал, например выводил - JVM exit, а потом его забыли убрать. Вообще, не удивлюсь если этот код будет вырезан оптимизирующим компилятором нафиг, ну или заменен нопами. Единственное что приходит на ум - это ребро happens-before при старте потока - но с чем? если метод ран пустой... На 99 процентов уверен - что можно убирать этот стремный код.
...
Рейтинг: 0 / 0
JMX и сигналы операционной системы
    #38087312
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сложно. Туда куда мы деплоимся не поставят лишнего софта. В т.ч. GCC и GNU make.
...
Рейтинг: 0 / 0
JMX и сигналы операционной системы
    #38087316
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сегодня вечером соберу тестовый стенд и попробую сигналы Linux.
Что там и к чему. Забыл ведь совсем...

http://www.kernel.org/doc/man-pages/online/pages/man7/signal.7.html

Помнится я использовал Kill с сигналами чтобы вызвать дамп
памяти с потоками для jboss. Уж зачем надо не помню.
...
Рейтинг: 0 / 0
JMX и сигналы операционной системы
    #38087694
GKS_Samara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день, mayton!

> Помнится я использовал Kill с сигналами чтобы вызвать дамп
> памяти с потоками для jboss. Уж зачем надо не помню.

Вот какие сигналы могут я видел:
SIGINT - Нажали ctrl+C
SIGTERM - в винде- крестик, в юниксе - kill
SIGTHUP - в юниксе - У нас отняли консоль

Соответственно добропорядочное приложение :) должно уметь обрабатывать
эти три сигнала.

Да, есть ещё какой-то, аналогичный нажатию ctrl+break - но он не доходит
до программы, а обрабатывается JVM- как раз дамп потоков.

--
Алексей
JID: alxt@ya.ru
Posted
via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
JMX и сигналы операционной системы
    #38088534
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonТуда куда мы деплоимся не поставят лишнего софта. В т.ч. GCC и GNU make.Соберите "у себя" и отдайте готовый бинарь.
На java.library.path, надеюсь, нет религиозных запретов?
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / JMX и сигналы операционной системы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]