Pergunta

Eu estou escrevendo um aplicativo que permite aos usuários agendar um tempo de execução demorada tarefas de uma aplicação web (Linux / Apache / CGI :: Aplicação). Para fazer isso eu uso o Horário :: no módulo que é a interface Perl ao comando "at". Desde as tarefas agendadas não estão repetindo, não estou considerando "cron". Tenho dois problemas com "at" embora:

  1. Agendamento funciona bem quando minha aplicação CGI é executado sob o invólucro suexec, mas não quando programado pelo proprietário do processo Apache. Como posso obter a programação para trabalho em ambos os ambientes (suexec e sem suexec)?
  2. Parece que os processos agendados por "at" ou Schedule :: Em não têm relatórios de falha, e eu às vezes acham que as tarefas programadas falhar silenciosamente. Existe alguma maneira de registrar o fato de que a tarefa agendada (não o próprio programador) não foi capaz de prazo?

Não estou fixo em "at" e estou aberto a usar outros mais robustos, métodos de agendamento, se houver algum.

Obrigado por sua atenção.

Foi útil?

Solução

Eu ouvi coisas boas sobre A Schwartz . Ele não tem um atraso de até embora; você iria apresentar os trabalhos através de pelo, mas que deve resolver ambos os problemas que você lista acima, desde que o seu script SUBMIT_JOB era simples.

(como uma advertência, eu tenho usado apenas Gearman , eu acho que você 'd querem uma fila de trabalho confiável para isso, um 'dispare e esqueça' mecanismo, para que possa manter o seu SUBMIT_JOB mudo.)

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