Hoje vi uma pergunta no fórum do iMasters bem simples mas que me deu vontade de criar um tópico aqui para respondê-la: Cron jobs, o que é?
O que são as Cron Jobs?
As Cron Jobs são como as Terefas 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.
Mas chega de lero lero…
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:
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
Cron Job que rode as 12:30am de segunda e sexta
Cron Job que rode a meia-noite de três em três dias
Cron Job que rode todo dia a cada duas horas
Se você ficou com dificuldade nessa parte do tempo existem alguns esse aqui. :)
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:
Isso fará com que os erros sejam enviados para o e-mail determinado.
Depois é só ir no terminal/shell e chamar o comando:
Se nada der errado a cron foi instalada com sucesso e você pode vê-la na lista de crons que estão rodando:
Ufa! :D
Pra quem gostou e/ou quer saber mais ficam aqui alguns links: » http://www.thesitewizard.com/general/set-cron-job.shtml » http://www.aota.net/Script_Installation_Tips/cronhelp.php3