powered by simpleCommunicator - 2.0.30     © 2024 Programmizd 02
Map
Форумы / Java [игнор отключен] [закрыт для гостей] / Системный процесс на Java
25 сообщений из 26, страница 1 из 2
Системный процесс на Java
    #40077298
Как сделать системный процесс, написанный на Java, который бы запускался каждый день в X часов Y минут.
Процесс должен посмотреть все записи в базе postgresql.

Предполагается, что Java программа постоянно запущена, и сама ловит момент запуска этого процесса, т.е. процесс запускается не вручную.

С процессами в java не сталкивался.
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077305
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим Сысоев,
Линукс или винда?
В винде зовется сервис. В линуксе демон.
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077307
Sergunka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://www.baeldung.com/spring-scheduled-tasks

Можно и попроще на спринге
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077315
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно и без спринга
@Schedule
Кто еще?))
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077347
Sergunka,

Да, через Spring сойдёт решение.
@Scheduled(cron = "0 03 14 * * *")
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077348
PetroNotC Sharp,

На Windows. Порылся и натолкнулся на @Scheduled в спринге
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077350
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим Сысоев,
Угу. И чего тебя тогда понесло на системное непонятно))
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077351
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим Сысоев
Как сделать системный процесс, написанный на Java, который бы запускался каждый день в X часов Y минут.
Процесс должен посмотреть все записи в базе postgresql.

Предполагается, что Java программа постоянно запущена, и сама ловит момент запуска этого процесса, т.е. процесс запускается не вручную.

С процессами в java не сталкивался.


ИМХО удобнее использовать шедулер ОС, который бы запускал приложение java.
Использовать @Scheduler от Spring'а, ну такое.
Там надо будет мониторинг настраивать, что бы следить запускалось или не запускалось, логгинг и пр.
С системным шедулером это всё не нужно. Оно уже есть в ОС.
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077352
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,
Да вот фиг ты это докажешь прогеру. Особенно на винде))).
Боится админских работ. Поэтому и вопрос написал.
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077355
Synoptic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Делал такое. Обычное приложение + задача в шедулере windows.
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077358
PetroNotC Sharp,
я не знаком с админскими работами, просто в тз написано такое выполнить. Спринга я думаю, что достаточно.
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077359
PetroNotC Sharp, в тз написано. Думаю, что больше абстрагировано, поэтому @Scheduled(cron = "0 04 15 * * *") в спринге достаточно.
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077362
Фотография fixxer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим Сысоев,

А вот просто интересно, ты один работаешь? Как вообще это выглядит, тебе дают бумажку с ТЗ и даже обсудить не с кем?
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077380
Sergunka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тут есть еще один момент... а вдруг нежданчик и надо будет на линуксе пускануть. Спринг легко сработает.

Вцелом это хороший опыт типо мультиплатформенного программирования
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077386
fixxer,

Всё просто, это часть тестового задания )
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077387
Sergunka,

А вдруг нежданчик и спалят контору)
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077397
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Эта задача,тем более если она тестовая,как раз на знания спринг шедулера
нет ничего проще написать метод ,который делает селект из бдшки в определенное время/интервал

не забудь на main навесить @EnableSheduling,иначе работать не будет
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077400
Слать тогда надо лесом таких работодателей. Которые просят одно (сделать таску, работающую по расписанию), а имеют в виду другое (задание на spring scheduler). На работе ТЗ так же ставить будут?
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077410
asv79,Ржавый гвоздь,
@EnableScheduling поставил, здесь больше на проверку ООП задание. Меня изначально смутило описание системного процесса.
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077447
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
mad_nazgul,
Да вот фиг ты это докажешь прогеру. Особенно на винде))).
Боится админских работ. Поэтому и вопрос написал.


Я бы не сказал, что боятся.
Скорее всего просто не знают.
Т.к. сейчас большая часть инфраструктуры для разработки (кроме продуктов от MS) заточена больше под *nix (MacOS, Linux), чем под Windows.
Соответственно информация HowTo обычно написана, про Linux, которую можно использовать (с оговорками под MacOs).

Сам недавно настраивал OpenSSH под Windows 10, чтобы проброс делать к серверу.
Были некоторые подводные камни. Надо было драть какую то левую сборку, подменять ею стандартный виндовый OpenSSH.
В принципе заработало. Но если бы знающие люди не ткнули носом что делать, сам бы фиг разобрался.
При этом под Linux/MacOS, всё на стандартно работает "из коробки".
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077448
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим Сысоев
fixxer,

Всё просто, это часть тестового задания )


Дык предупреждать надо!
Для тестового задания, рекомендую ещё quartz посмотреть.
Могут спросить.
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077496
gmugar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
если все что надо это запускаться раз в день, в определенное время то это элементарно делается c помощью ScheduledExecutorService .
в три строки кода реально.
и нафиг не нужны никакие spring и quartz.
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077499
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Друзья. Если мы делаем планировщик заданий на Java (безразлично будет там Spring/Quatrz или бох еще
какие технологии) то мы обязываем хост держать поднятой java-процесс постоянно. Тем самым забирая
у ОС полезный minimal footprint который java никогда не выгружает в силу архитектуры.

Более рационально с моей точки зрения использовать планировщики ОС. Это позволяет вам прозрачно обновлять
версии софта. Держать хост более доступным для памяти. Тем более что для джобов характерна такая циклическая
зависимость. ОДин джоб отработал. Далее стартовал второй и т.д.

Или запускайте в докере. Тоже хороший вариант. Но освобождайте ресурсы ОС после того как джоб уже не нужен.
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077549
mad_nazgul, всё что угодно могут спросить)
...
Рейтинг: 0 / 0
Системный процесс на Java
    #40077572
Garrick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Можно и без спринга
@Schedule
Кто еще?))

1. PgAgent, pg_cron или pgpro_scheduler
2. Quartz
3. В любой ОС есть соответствующие инструменты.
...
Рейтинг: 0 / 0
25 сообщений из 26, страница 1 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Системный процесс на Java
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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