У меня есть локальная и удаленная транзакция. По какой-то причине я хочу синхронизировать локальный с удаленным, скажем, каждые 5 минут. Должен ли я использовать службу, которая выполняет синхронизацию с использованием таймера или планировать задачу на сервере Windows?Задача планирования и обслуживания
ответ
Раньше я всегда делал службу Windows для выполнения заданий по времени. Но несколько лет назад я переключился на подход планировщика заданий, без сожалений.
Вот преимущества, которые я нашел с помощью подхода Task Scheduler:
Меньше кода для записи (в основном потому, что у вас нет накладных расходов на
Timer
)Легче отладки (просто нажмите F5 и запустите его, так как это нормальный EXE)
Легче запускать специальное выполнение (в случае, если вы хотите проверить результат прямо сейчас, а не ждать до следующего тайм-аута n)
P.S. Для справок в будущем этот вопрос должен быть действительно задан в Programmers Stack Exchange, так как речь идет о дизайне, в отличие от проблемы с существующим кодом.
Если вы используете MS SQL Server, а локальный (исходный) сервер имеет хотя бы стандартную версию или выше, вы должны подумать об использовании репликации (SQL Server Express не может служить издателем или распространителем). Если на локальном сервере есть версия Express Edition, но на удаленном сервере стандартная версия или выше, вы должны настроить PULL-подписку на удаленную сторону, чтобы извлекать данные с сервера Express.
Если репликация не является случаем, я бы предложил использовать сервис (работающий с учетной записью SYSTEM) с использованием таймера, потому что вам нужно указать, какая учетная запись Windows будет использоваться для запуска задачи для запланированной задачи. Когда пароль для учетной записи изменится, ваши задачи не будут выполняться и даже хуже, вы не получите никакой информации об этом.
Если ваша частота была длительной (один раз в неделю или один раз в день), то использование службы следует рассматривать как расходование системных ресурсов, но я думаю, что это приемлемо в течение 5 минут.
Используете ли вы Windows для ОС? если да, я бы написал файл сценария для синхронизации базы данных и поместил скрипт в планировщик заданий.
Для ubuntu запланированная задача будет моим выбором ...
- 1. Задача планирования и ожидание
- 2. Задача планирования
- 3. Задача против планирования продолжения
- 4. задача планирования многопроцессорности python
- 5. задача планирования в iphone
- 6. Задача планирования в Кордове
- 7. Задача планирования заданий
- 8. Задача планирования работы
- 9. задача планирования с powershell
- 10. Взвешенный интервал Задача планирования и динамическая программа
- 11. Задача планирования Paraller в Laravel
- 12. Задача планирования ColdFusion с использованием cfinclude?
- 13. Задача планирования php-файла проблема с файлом
- 14. Задача планирования сельдерея периодически, но не выполняется.
- 15. Задача планирования с использованием java spring mvc
- 16. задача планирования в Windows 2008 с powershell
- 17. Задача очистки плана обслуживания SQL Server
- 18. Какой самый проверенный способ организации сценариев/планирования обслуживания баз данных?
- 19. Брандмауэр планирования планирования
- 20. Возникает ли задача планирования при перезапуске службы Windows?
- 21. Задача планирования на удаленном компьютере с использованием cmdline schtasks.exe
- 22. задача планирования в Windows 2008 сервер для php-файла
- 23. Задача планирования в Windows с использованием SCP, SSH
- 24. Примеры планирования и поиска
- 25. cond_broadcast и порядок планирования
- 26. Алгоритм планирования для планирования жизни
- 27. Ассоциации планирования приложений Rails?
- 28. гетерогенная задача и однородная задача
- 29. Задача резервного копирования БД в плане обслуживания SQL 2005
- 30. Где выполняются алгоритмы планирования?