Для рабочего проекта я беру на себя задачу создать службу Windows C # .NET, которая будет работать круглосуточно и без выходных. По сути, программа просто перемещает файлы (на основе заданного пути и регулярного выражения) между различными местоположениями - из / в HTTP, сетевые пути и FTP. Администратор планирует эти задания на странице администрирования в ASP.NET, где все задания будут храниться в базе данных. Казалось бы, самая сложная часть - это планирование этих заданий - очень просто запланировать выполнение задач на определенный день в определенное время, но оно также должно быть достаточно надежным, чтобы задачи могли выполняться каждый день, каждый рабочий день, каждый определенный день. месяца или даже каждые несколько секунд / минут. Я пришел к выводу, что самый простой способ сохранить эту информацию о расписании - использовать синтаксис cron (http://adminschoice.com/crontab-quick-reference) в базе данных.
В приложении есть таймер для проверки базы данных на наличие изменений каждые 10 минут, но основная проблема, с которой я сталкиваюсь, - это получение задач, которые необходимо выполнить - я думаю, одним из вариантов было бы просто извлекать все каждые 10 минут и проверять каждую отдельную строку. чтобы увидеть, должны ли они быть выполнены. Но я считаю, что это очень неэффективный и технически ленивый способ - как бы вы, ребята, это сделали?
Я знаю, что выполнение запланированных задач Windows было бы намного проще, но похоже, что моему боссу это не нужно.
Заранее благодарим всех, кто может дать несколько советов / советов.