За и против выполнения встроенного Quartz.NET или как сервис окон

Я хочу добавить кварцевое планирование к приложению ASP.NET.

Это будет использоваться для отправки, стоял в очереди электронные письма.

Каковы за и против выполнения quartz.net как сервис окон по сравнению со встроенным.

Мое основное беспокойство - то, как Quartz.NET во встроенном режиме обрабатывает переменное количество рабочих процессов в IIS.

15
задан Anthony 20 May 2010 в 01:52
поделиться

2 ответа

Вот некоторые вещи, которые вы можете учесть при принятии решения о том, следует ли вам запускать встроенные приложения или нет:

  1. Если вы собираетесь создавать задания ТОЛЬКО из приложения хостинга, то запускайте встроенные. В противном случае запускайте как службу.

  2. Если для ваших заданий могут потребоваться разрешения, отличные от разрешений, которые есть у веб-приложения, запустите как службу.

  3. Если ваши задания - это длительные задания или задания, которые используют много памяти, запускайте как службу.

  4. Если вам нужно выполнять задания в кластерной среде для повышения производительности, масштабируемости или отказоустойчивости, запускайте как службу.

Из приведенного выше вы можете сделать вывод, что я предпочитаю запускать его как службу. Это связано с тем, что если вы собираетесь пройти через настройку планировщика заданий, это означает, что у вас есть задания, которые необходимо запускать по расписанию, или длительные задания. Услуга обычно является лучшим выбором для этого вида работы.

14
ответ дан 1 December 2019 в 02:37
поделиться

Quartz.NET может быть создан для отдельных приложений (конфигурация веб-фермы требует количества планировщиков). Вы можете безопасно запускать несколько планировщиков, если у вас есть резервные копии ваших заданий в базе данных и у вас есть Quartz.NET, настроенный в кластерном режиме (и часы синхронизируются естественным образом).

Основная проблема связана с обработкой пула приложений до IIS 7.5. Без постоянных проверок ваш работник приложения может быть переработан, и ваш планировщик будет отключен, пока кто-то не отправит веб-запрос для повторного запуска пула приложений. В IIS 7.5 есть новая функция, позволяющая постоянно поддерживать работу пулов приложений.

В противном случае между двумя моделями не должно быть большой разницы.

13
ответ дан 1 December 2019 в 02:37
поделиться
Другие вопросы по тегам:

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