Я ищу руководство по общей архитектуре этой маленькой системы, которую я строю.
В настоящее время у меня есть приложение, которое развернуто (и обновлено) через xcopy на нескольких серверах. Это хорошо работает для обновления кода, но не очень хорошо для обновления периода выполнения кода, так как он настроен как задание Windows, запускаемое каждый час. Замена xcopy работает хорошо, потому что я могу запустить обновление с моего локального компьютера и отправить новый exe-файл на все серверы. А на следующий час планировщик задач запустит новый exe.
Я бы хотел изменить его на работу таким образом.
Мое приложение работает как служба Windows и использует System.Threading.Timer, чтобы подождать определенную продолжительность, а затем выполнить код. Таким образом, часть процесса может проверить базу данных и, при необходимости, сократить период выполнения для данного сервера.
Проблема в том, что, поскольку .exe будет работать как служба, он не позволит легко выполнить обновление через xcopy, поскольку файл будет использоваться постоянно.
Есть какие-нибудь мысли о том, как мне настроить это, чтобы иметь возможность легко обновлять xcopy, работая в качестве службы Windows? Это вообще возможно?