Reverse Ajax DWR != COMET
Alguns já devem ter visto uma palestra que ministrei no IV Natal Java Day 2008 sobre Reverse Ajax do DWR onde tento explicar como funciona essa funcionalidade do DWR. Porém, saiu alguns slides do Joe Walker sobre o DWR 3.0 onde no slide 37 ele fala que Reverse Ajax não é a mesma coisa do COMET.
O que tem isso ?
Na minha palestra acho que não fui bem claro e acabei gerando uma certa confusão, pois algumas pessoas me questionaram sobre isso. Vamos tentar aqui desmistificar e tentar novamente explicar o que é o Reverse Ajax do DWR.
Primeiro vamos entender alguns conceitos básicos.
Ajax
Ajax é qualquer chamada preferencialmente assíncrona que se utiliza do XMLHttpRequest(XHR) para se comunicar com o servidor. Quem dispara essa ação é sempre o cliente(browser ou usuário).
Reverse Ajax – Conceito
O Reverse Ajax seria algo inverso do Ajax padrão, ou seja, o servidor irá se comunicar com o cliente sem que o mesmo precise fazer essa solicitação. Não será mais o cliente fazendo uma solicitação ao servidor e esperando uma resposta e sim o servidor se comunicando com o cliente, sem que o mesmo precise fazer alguma solicitação.
COMET
COMET é uma das 3 técnicas de comunicação que o Ajax possui, as outras são Polling e Piggyback. Resumidamente o COMET é quando o servidor fica responsável em enviar mensagens para o cliente sem que o mesmo precise fazer alguma solicitação ao servidor.
O servidor é independente para atualizar “qualquer” cliente, sem que esse cliente tenha feito algum pedido.
Reverse Ajax do DWR
No DWR o Reverse Ajax envolve essas 3 técnicas: COMET, Polling e Piggyback.
Com ele você pode utilizar essas 3 individualmente ou juntas. Você pode definir que seu servidor irá ficar atualizando automaticamente os clientes que estão na sessão(browsers, usuários etc) –COMET, ou poderá definir o tempo em que o usuário/cliente poderá ficar enviando “perguntas” para o servidor –Polling, ou ainda permitir que o usuário faça uma solicitação e logo depois o servidor atualize todos os clientes em sessão ou os que ele desejar –Piggyback.
Conceitualmente Reverse Ajax é a mesma coisa do COMET, mas na prática no DWR isso não é completamente correto.
Conclusão
O DWR nos permite utilizar a técnica de COMET quando se ativa o Reverse Ajax, com isso acabamos que por comodidade utilizando somente o COMET para fazer as comunicações, logo essa funcionalidade de Reverse Ajax pode ser considerada igual ao COMET, pois essa é a funcionalidade “padrão” que utilizamos para esse fim. Claro, que no conceito geral, quando se ativa o Reverse Ajax no DWR você poderá utilizar as 3 técnicas.
Como foi dito também na minha palestra essa comunicação Reverse Ajax é dividida em 2 modos: Ativo e Passivo, onde o modo ativo possui ainda 3 sub-modos: Full Straming -que é equivalente ao Streaming do COMET “puro”, Early Closing -que é equivalente ao Long Polling e por fim o Polling.
Por isso o Reverse Ajax do DWR não é somente COMET, ele é a junção das 3 técnicas: Polling, Piggyback e COMET.
Bem espero ter esclarecido mais sobre esse assunto. Qualquer dúvida comentem ou enviem email 😉
Abraços
Excelente!
Seria possivel disponibilizar uma implementação detalhada pra gente?
Obrigado!
Bom dia,
Excelente artigo,
Onde posso encontrar documentação com implementações detalhadas para exemplificar todo o conceito de AjaxReverse do DWR?
Obrigado.
Thiago
qual desses ai que voce sitou fica melhor para o servidor nao sobrecarregar? com imagens, qual a diferença do ajax convencional do ajax reverso? qual a vantagem e desvantagem? qual desses ai eu posso ter uma conexao com mysql permanente sem atualizar o servidor e obtendo dados sem fechar conexao.
ta de parabens o seu post.
tadalafil medication cialis 20mg tablet buy ed pills generic
ramipril ca buy ramipril online buy arcoxia 120mg generic
vardenafil 10mg usa order levitra 20mg hydroxychloroquine 400mg sale
order generic asacol 400mg irbesartan without prescription avapro online
brand levitra 20mg buy vardenafil 10mg for sale buy plaquenil without a prescription
olmesartan uk order benicar 10mg sale buy divalproex 500mg for sale
buy clobetasol amiodarone 100mg price buy amiodarone without a prescription
buy diamox 250mg without prescription order imuran pill imuran 25mg generic
order digoxin sale order generic molnunat 200 mg molnupiravir 200mg price
order naprosyn 250mg pills order lansoprazole 15mg sale lansoprazole 30mg usa
coreg cost cenforce for sale aralen over the counter
buy proventil generic order albuterol 100 mcg sale order phenazopyridine 200 mg for sale
buy olumiant 2mg pills order glycomet pills buy lipitor tablets
buy singulair medication buy singulair cheap order avlosulfon 100mg pill
purchase adalat pills order allegra 120mg generic allegra us
amlodipine 5mg over the counter cheap omeprazole 20mg prilosec medication
buy priligy no prescription order priligy 30mg without prescription buy xenical 120mg generic
brand metoprolol 100mg order tenormin 50mg where to buy methylprednisolone without a prescription