O que são Cron Jobs

Cron JobsO que são e como usar as Cron Jobs?

Hoje precisei criar uma rotina que em determinado horário ele executa um script em php automaticamente para mim todos os dias no mesmo horário, portanto em pesquisa descobri o Cron Job.

O que são as Cron Jobs?

As Cron Jobs são como as Tarefas Agendadas do Windows: são tarefas executadas automaticamente de X em X tempos… Fazendo uma analogia à vida real é quando você tira o lixo pra fora ou arruma seu quarto, provavelmente você faz isso seguindo sempre um mesmo intervalo de tempo… De 2 em 2 dias, de 1 em 1 semana e por ai vai.

O termo “Cron Job” (também só chamado de cron) está mais ligado a sistemas UNIX do que Windows mesmo… Por isso o que vou falar aqui só se encaixa no Linux. Se você usa Windows é só dar uma olhada nas tarefas agendadas que você vai ter uma interface completa para trabalhar com as Tarefas Agendadas.

Pra que usar uma Cron Job em um site/sistema online?

Acho que o propósito mais comum de uma Cron Job seja a rotina de backup… Scripts que rodam diariamente (ou até mais demorados) e que fazem o backup do site e do banco de dados.

Você pode criar uma cron para quase qualquer coisa, mas geralmente são para atualização, limpeza, backup e etc.

Como criar uma Cron Job?

Se o seu site roda em algum servidor especializado e você tem um painel de controle como o cPanel recomendo que dê uma olhada lá pois existe uma interface web prontinha para gerenciar as crons… se você não tem esse painel ou não tem acesso à ele vai ter que ir direto ao shell / terminal do seu servidor e começar a gastar o dedo.

A definição de uma cron job consiste em uma linha com 6 valores separados por espaço, assim:

minuto hora dia mes dia-da-semana linha-de-comando

Vamos a alguns exemplos de configuração de tempo antes de criar a cron em si:

Cron Job que rode todo dia as 06:00am

0 6 * * * linha-de-comando

Cron Job que rode as 12:30am de segunda e sexta

30 12 * * 1,5 linha-de-comando

Cron Job que rode a meia-noite de três em três dias

0 0 */3 * * linha-de-comando

Cron Job que rode todo dia a cada duas horas

0 */2 * * * linha-de-comando

A linha-de-comando

É um comando que você usaria normalmente para iniciar um script ou chamar um wget. :)

Instalando suas Cron Jobs

Agora é só salvar o conteúdo das suas crons, uma por linha em um arquivo chamado cron.txt e colocar uma linha assim no começo (primeira linha) do arquivo:

MAILTO=meuemail@meudominio.com

Isso fará com que os erros sejam enviados para o e-mail determinado.

Depois é só ir no terminal/shell e chamar o comando:

crontab cron.txt

Se nada der errado a cron foi instalada com sucesso e você pode vê-la na lista de crons que estão rodando:

crontab -l

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s