Действительно ли возможно выполнить задание крона в веб-приложении?

В веб-приложении Java (сервлеты/пружина mvc), с помощью кота, действительно ли возможно выполнить сервис типа задания крона?

например, каждые 15 минут, произведите чистку базы данных журнала.

Можно ли сделать это способом, которое является контейнерным независимым политиком, или это должно быть выполнено с помощью кота или некоторого другого контейнера?

Определите, как ли метод, гарантируют, будет работать в определенное время или то, которое работает каждые 15 минут, но может быть сброшено и т.д., если приложение перерабатывает (это - то, как это находится в .NET при использовании таймеров),

23
задан Pascal Thivent 11 January 2010 в 01:32
поделиться

4 ответа

Корпорация Майкрософт опубликовала информацию о отражении реестра , которая включает описание KEY _ WOW64 _ 64KEY для RegOpenKeyEx.

-121--4818000-

Задания ориентированы на пакеты. Либо ручным триггером, либо cron-style (как вам кажется).

Все же у меня нет ваших отношений между webapp и cron-style работой? Единственный случай использования webapp, о котором я могу подумать, это то, что вы хотите иметь конечную точку HTTP, чтобы запустить задание (но это противостоит вашему утверждению о быть 'cron-style').

Обычно используется выделенная рамка, который решает проблему «пакетных заданий». Я могу порекомендовать кварц.

-121--1584177-

Как указано в главе 23. Планирование и объединение потоков , Spring имеет поддержку планирования через классы интеграции для таймера и планировщика кварца ( http://www.quartz-scheduler.org/ ). Для простых целей рекомендуется использовать таймер JDK .

Обратите внимание, что планировщики Java обычно используются для запуска бизнес-заданий Java . Для задач sysadmin (как и в приведенном вами примере) следует действительно предпочесть cron и традиционные инструменты администрирования (bash и т. д.).

11
ответ дан 29 November 2019 в 03:08
поделиться

Он будет специфичным для контейнера. Это можно сделать в Java с помощью Quartz или просто с помощью планирования одновременных утилит Java ( ScheduledExecutingService ) или в качестве cron-задания уровня ОС.

Каждые 15 минут кажется экстремальным. Как правило, я бы также посоветовал вам только усечь/удалить файлы журнала, которые больше не записываются в (и они, как правило, перевернуты в течение ночи).

-121--1584176-

Корпорация Майкрософт опубликовала информацию о отражении реестра , которая включает описание KEY _ WOW64 _ 64KEY для RegOpenKeyEx.

-121--4818000-

Задания ориентированы на пакеты. Либо ручным триггером, либо cron-style (как вам кажется).

Все же у меня нет ваших отношений между webapp и cron-style работой? Единственный случай использования webapp, о котором я могу подумать, это то, что вы хотите иметь конечную точку HTTP, чтобы запустить задание (но это противостоит вашему утверждению о быть 'cron-style').

Обычно используется выделенная инфраструктура, которая решает проблему «пакетных заданий». Я могу порекомендовать кварц.

0
ответ дан 29 November 2019 в 03:08
поделиться

Если вы используете пружину, вы можете использовать встроенные кварцевые или таймеры крюки. Смотреть http://static.springsource.org/spring/docs/2.5.x/Reference/scheduling.html

2
ответ дан 29 November 2019 в 03:08
поделиться

Вот « Ruby-esque » способ его обработки:

temp _ array = Marshal.load (Marshal.dump (your_array_to_be_cloned))

-121--167777-

Я согласен с другими, кто говорит, что использование подготовленных запросов, как правило, лучше, чем использование уходящих функций. Это проще в использовании, и нет пути, что значения параметров могут привести к проблемам с впрыском SQL, так как значение отправляется на сервер RDBMS отдельно от запроса SQL.

Однако использование параметров полезно только в том случае, если динамические части запроса SQL являются параметром вместо литерального значения в выражении. Параметр запроса нельзя использовать вместо имени таблицы, имени столбца, SQL-выражения или списка значений (например, аргументов предиката IN () ).

Подготовленные запросы также имеют более высокую производительность , чем неготовые запросы (по крайней мере, в MySQL). Большинство людей говорят обратное, но хорошо уважаемые mysqlperformanceblog.com сделали тестирование:

http://www.mysqlperformanceblog.com/2006/08/02/mysql-prepared-statements/

-121--4196178-

Это будет специфично для контейнеров. Это можно сделать на Java с помощью Quartz или просто с помощью планирования одновременных утилит Java ( ScheduledExecutingService ) или в качестве cron-задания уровня ОС.

Каждые 15 минут кажется экстремальным. Как правило, я бы также посоветовал вам только усечь/удалить файлы журнала, которые больше не записываются в (и они, как правило, перевернуты в течение ночи).

0
ответ дан 29 November 2019 в 03:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: