Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Campão

[Resolvido] Atualização de conteudo

Recommended Posts

Galera, beleza?

Alguem sabe como funciona e qual a tecnologia utilizada pelo Facebook para atualizar os novos posts na pagina principal do usuario!

Por exemplo, estou logado no facebook e quando alguem manda alguma mensagem na minha pagina, imediatamente aparece um aviso e a mensagem ja aparece na minha pagina! Nesse caso, é minha pagina que fica toda hora fazendo pesquisa no servidor para ver se tem algo novo? Estou precisando fazer algo semelhante em um projeto e gostaria de saber se alguem tem ideia de como é feito!

 

Fiz uns testes com a funcção setInterval do Javascript. Ou seja, acada 5 segundos o setInterval chamava uma função que atraves do Ajax(Jquery)+PHP verificava se tinha algo novo no banco de dados! Até ai tudo bem, so que percebi que a pagina dava uma pequena "travadinha", quando o setInterval chamava a função! Percebi isso digitando um texto em uma textarea, ai quando o setInterval era chamado, dava essa "travadinha" e eu não conseguia digitar na textarea, logo em seguinda, voltava ao normal!

 

Pesquisei no Google sobre meu problema e sobre a tecnologia do Facebook, e encontrei algo sobre "long-poolling" e "protocolo XMPP", mas ainda estou verificando o que isso td significa!

 

Se alguem souber de algo para me ajudar, ficarei muito grato

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

pesquise sobre commet, ajax reverso e server-push

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu, William Bruno, obrigado pela ajuda!

Dei uma pesquisada e vi que tem muita coisa que não tinha nem ideia que existia! rs

 

Fiz uns testes com o tal do "long-poolling" e gostaria de saber sua opinião sobre essa tecnica!

Me basiei num exemplo citado neste link (http://stackoverflow.com/questions/333664/simple-long-polling-example-code - a primeira resposta com 120 votos)! Você sabe sobre as vantagens e desvantagens dessa tecnica?!

 

Li tb sobre o commet, e estão falando que é a melhor tecnica a ser usada! você tem algum exemplo simples para eu entender como funciona?

 

Outra coisa, voltando ao Facebook, no meu teste com o "long-poolling" consegui sempre atualizar um conteudo, sempre no mesmo lugar, tipo o javascript pega o conteudo que o PHP apresenta, e coloca no começo de uma DIV! Até ai tudo bem, funciona perfeito se fosse um chat por exemplo, mas tipo, no Facebook, percebi que a pagina é atualizada em varios lugares diferentes, tipo, parece ser em varias DIVs diferentes!

 

Como eu faria isso?! você tem ideia?! Não sei se me expressei bem, mas tipo, com o Commet ou com o Long-Poolling, da pra fazer isso?!

 

Mais uma vez, obrigado pela ajuda!

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites
com o Commet ou com o Long-Poolling, da pra fazer isso?!

dá sim.

 

ai ou você faz uma requisição para cada área a ser atualizada, ou trabalha com um retorno em jSON, para ficar simples dividir o retorno de cada parte. Assim com uma unica requisição, você recebe várias informações.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Willam Bruno, valeu mesmo cara, deu certo, o formato JSON resolveu meu problema!

 

Obrigado, abraços!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só lembrando que a stack PHP + Apache não é uma das melhores para ter um endpoint de Long-Polling, visto que cada request é uma thread no server.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.