Как Вы справляетесь с запланированными задачами для своих веб-сайтов, работающих на IIS?

Он отлично работает оракул

merge into table1 t1
using (select * from table2) t2
on (t1.empid = t2.empid)
when matched then update set t1.salary = t2.salary
7
задан Matt Ephraim 20 December 2008 в 16:13
поделиться

5 ответов

Для хранения жизни простой я постарался бы не создавать один большой монолитный exe и повредил бы работу, чтобы сделать в отдельные задачи и иметь запланированную задачу Windows для каждого. Тем путем можно поддержать кодовую базу более легко и изменить функциональность на более детализированном уровне.

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

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

4
ответ дан 6 December 2019 в 23:14
поделиться

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

2
ответ дан 6 December 2019 в 23:14
поделиться

Мы используем Windows Scheduler Service, который запускает маленькое консольное приложение, которое просто передает параметры веб-сервису.

, Например, если пользователь запланировал отчеты № 388 и № 88, запланированная задача создается с командной строкой, бывшей похожей на это:

c:\launcher\app.exe report:388 report:88

, Когда планировщик стреляет, это приложение просто, выполняет веб-метод на веб-сервисе, например, InternalService. SendReport (международный идентификатор).

Обычно Вы уже имеете всю необходимую бизнес-логику в наличии в своем веб-приложении. Этот подход позволяет использовать его с минимальными усилиями, таким образом, нет никакой потребности создать любой комплекс .exe или сервис окон со сменными модулями, и т.д.

2
ответ дан 6 December 2019 в 23:14
поделиться

Используйте Windows Scheduled Tasks или создайте службу Windows, которая делает планирование себя.

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

Проблема с выполнением операций из запланированного EXE, а не изнутри веб-страницы, заключается в том, что операции могут выиграть или даже полностью потребовать ресурсов, которые веб-страница будет иметь кеш IIS и кеш ORM - вот две вещи, которые приходят на ум. В случае ORM внесение изменений в базу данных вне контекста веб-приложения может даже оказаться фатальным. Я предпочитаю запланировать curl.exe для запроса веб-страницы с localhost.

2
ответ дан 6 December 2019 в 23:14
поделиться
Другие вопросы по тегам:

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