Programação / jQuery

Executando tarefas automaticamente com intervalo controlado via jQuery

Verifique a sessão do usuário, novas notificações, carregue pixels ou qualquer atividade que seja necessária para que seu sistema atenda as necessidades do seu público

Por Gustavo Web

Publicado por Gustavo Web
em 30/11/2018 às 09h41

Lista VIP UpInside

Entre para nossa lista VIP e receba vídeo aulas, artigos e tutoriais exclusivos e com prioridade

  QUERO ENTRAR

Aula exclusiva UpInside Play

Acessar aula no Play

Compartilhe:

Salve salve moqueridos, Gustavo Web aqui e hoje vamos trabalhar com um recurso chamado setInterval que vai possibilitar que seu javascript execute determinada rotina repetidamente de acordo com o tempo que você estipular.

O nosso objetivo aqui é simular um ambiente em realtime, e é claro que você tem outras técnicas para atingir o mesmo objetivo... Mas no nosso caso, de maneira bem descomplicada conseguimos criar o nosso protótipo e atingir o nosso objetivo.

É claro que você pode adicionar esse mesmo recurso para fazer inúmeras atividades... Se quiser até mesmo, um sistema de chat que a cada 1 segundo verifique se existe nova mensagem e entrega aos seus destinatários.

Não necessariamente você precisa trabalhar com WebSocket ou Long Polling, para um recurso simples como o que temos proposto apenas duas linhas da função setInterval é o suficiente para solucionar o problema.

Sintaxe

É bem tranquilo! No entanto que você vai fazer tudo o que necessário no seu código e somente depois dele pronto e testado que você implementa a repetição. Pra que você tenha noção do que estamos falando:

setInterval(function(){

// do something

}, 5000);

Obviamente que dentro da function vai toda a sua função. O parâmetro que informei 5000, é porque a unidade de tempo é em milissegundos! Logo, 5000 milissegundos são referente a 5 segundos.

Performance

Um ponto que você como desenvolvedor deve ficar muito atento é o processamento e a carga que isso gerará no banco de dados. Não é só porque é simples de implementar a rotina que você pode colocar isso a cada 500ms ou a cada segundo...

Imagine que seu site está com 100 pessoas online e você tem a rotina que está disparando a ação a cada 1 segundo. O seu banco de dados estará sendo fuzilado por um recurso que não necessariamente possui grande importância.

Numa verificação de sessão por exemplo, você pode colocar a cada 30 segundos que já é o suficiente para barrar um acesso indevido.

Use com responsabilidade para não comprometer o comportamento do sei site como um todo.

Material de Apoio

Aqui abaixo você encontra o link para acessar o repositório desse projeto! Aproveita e deixa uma estrelinha no repositório e me segue lá também :)

Material de Apoio

Feedback

Se conseguir implementar esse recurso com sucesso, me informe aqui abaixo nos comentários :)

Me fala também o que você achou da aula, e se você já sabia que poderia fazer nesse formato simples e descomplicado.

Compartilhe:

Em Programação:

Deixe seu comentário: