Хобрук: Ваш путь к мастерству в программировании

Использование службы Windows в качестве службы планирования

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

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

Мой вопрос: есть ли лучший способ сделать такое планирование без sql-сервера или вы знаете, существует ли уже существующее, более общее (бесплатное) решение?

[Edit] Я не могу использовать планировщик задач Windows, так как их период покоя - зимой, а период занятости - летом. С планировщиком задач мне пришлось бы вручную изменять запланированные задачи дважды в год. Вот чего хотят я и мой клиент. [/ Edit]

Спасибо


  • Есть ли на сервере Планировщик заданий? 08.05.2009

Ответы:


1

Вы можете использовать функцию Windows «Запланированные задачи», чтобы запускать какое-либо консольное приложение, когда это необходимо.

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

08.05.2009
  • Я проверю Кварц, выглядит многообещающе. 08.05.2009

  • 2

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

    Таким образом, вы можете использовать планировщик задач для запуска вашего приложения каждые 15 минут. Когда ваше приложение запускается, оно использует свой собственный файл конфигурации, чтобы определить, нужно ли ему что-то делать.

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

    08.05.2009
    Новые материалы

    Что такое гибкие методологии разработки программного обеспечения
    Что представляют собой гибкие методологии разработки программного обеспечения в 2023 году Agile-методологии разработки программного обеспечения заключаются в следующем: И. Введение A...

    Ториго  — революция в игре Го
    Наш следующий вызов против ИИ и для ИИ. Сможет ли он победить людей в обновленной игре Го? Обратите внимание, что в следующей статье AI означает искусственный интеллект, а Goban  —..

    Простое развертывание моделей с помощью Mlflow — Упаковка классификатора обзоров продуктов NLP от HuggingFace
    Как сохранить свои модели машинного обучения в формате с открытым исходным кодом с помощью MLFlow, чтобы позже получить возможность легкого развертывания. Сегодня модели упаковки имеют несколько..

    Математика и интуиция - Часть 1
    У каждой математической формулы есть доказательство. Часто эти доказательства слишком сложно понять, поскольку многие из них основаны на индукции, некоторые - на очень сложных наблюдениях, а..

    Раскрытие возможностей НЛП: часть речевой маркировки и ее проблемы
    В сфере обработки естественного языка (NLP) маркировка частей речи (POS) выступает в качестве фундаментального метода, позволяющего компьютерам понимать и анализировать человеческий язык на..

    Под поверхностью: раскрытие деталей системы с помощью инструментов Linux CLI
    Чем больше вы изучаете Linux и продвигаетесь вперед, тем больше вам нужно проверять информацию о вашей системе. Эта информация может касаться аппаратного обеспечения, такого как процессор,..

    Как реализовать линейную регрессию в JavaScript
    Узнайте, как реализовать линейную регрессию в JavaScript с помощью ML.js Линейная регрессия — это метод машинного обучения, используемый для моделирования связи между зависимой переменной и..