Pergunta

Eu tenho esta pergunta de um cliente, para executar alguns scripts de banco de dados em uma base diária ou quinzenal, dependendo do tipo de período. Eles definiram um período de 'ocupado' e um período de 'tranquila'. Eles estão usando hospedagem compartilhada para suas aplicações e não podem adicionar trabalhos do SQL Server para seu banco de dados.

O que eu quero fazer é criar um serviço do Windows, o que é configurável usando um arquivo de configuração, contendo os diferentes períodos e seus intervalos. Este serviço é verificar a hora ea data atuais contra os períodos programados no arquivo de configuração e executar um procedimento SQL Server armazenados uma vez que as partidas de intervalo

A minha pergunta:? Existe uma maneira melhor de fazer esse tipo de agendamento sem sql server ou você sabe se uma solução existente, mais genérico (livre) já existe

[Edit] Eu não posso usar janelas agendador de tarefas desde o seu período de silêncio é durante o inverno e seu período ocupado é durante o verão. Com agendador de tarefas que eu teria que modificar as tarefas agendadas manualmente duas vezes por ano. Isso é agora o que eu nem meu cliente quer. [/ Edit]

Graças

Foi útil?

Solução

Há sempre a Agendador de Tarefas do Windows . Existe alguma razão para que eles seriam autorizados a instalar um serviço, mas não seria capaz de aproveitar o planejador embutido?

Outras dicas

O projeto Castelo tem um (como parte de Castelo Components) que você pode obter a maior parte do caminho até lá.

http://www.castleproject.org/

Você pode usar "Tarefas Agendadas" recurso de janelas para iniciar algum aplicativo de console sempre que for necessário.

Se você quiser criar sua própria solução de programação, então eu recomendo dar uma olhada em Quartz.NET , que oferece a mesma flexibilidade que o agendador de tarefas do Windows.

Por que não usar o agendador de tarefas e, em seguida, cada vez que o aplicativo é iniciado, ele verifica o seu próprio cronograma para trabalhar fora ou não precisa fazer algo.

Então, você poderia usar o agendador de tarefas para iniciar a sua aplicação a cada 15 minutos. Quando seu aplicativo é inicializado, ele usa seu próprio arquivo de configuração para trabalhar fora ou não precisa fazer algo.

Você também pode usar isso para obter o seu aplicativo para parar todas as versões em execução no momento de sua aplicação para matar quaisquer tarefas de execução longa!

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top