[Prévia] [Próxima] [Prévia por assunto] [Próxima por assunto]
[Índice cronológico] [Índice de assunto]

RES: pull X push e java 1.4



Olá,
 
Acho que a questão de usar filtros é mais fácil e elegante de ser feita no lado do cliente, tanto no caso pull como push. O servidor apenas se encarrega de entregar a mensagem pedida (pull) ou recebida (push). Concordam?
 
Outra coisa é que eu acho que o servidor não precisa guardar um estado de cada cliente. Se um cliente chegar ele começa a receber as mensagens a partir de sua chegada (push) ou pede as x últimas mensagens (pull).
 
Quanto a escalabilidade, acredito que isso não será problema no push, devido a sua definição, mas no pull se não se tomar cuidado pode-se sobrecarregar o servidor.
 
O que ainda não entendi é a discussão da escalabilidade do cliente. O cliente não precisa ser escalável, quem tem que lidar com várias conexões é o servidor. Anyway....
 
T+

	-----Mensagem original----- 
	De: Jorge Francisco Del Teglia [mailto:PROTECTED] 
	Enviada: sex 22-mar-02 12:06 
	Para: PROTECTED 
	Cc: 
	Assunto: Re: pull X push e java 1.4
	
	

	Olá Paulo,
	
	
	> Imagine que voce entra no chat, e quer falar apenas com a Tiazinha, isso
	> eh, ignorar por completo as outras mensagens. Usando push, voce teria de
	> fazer isso client side, isto eh, voce recebe todas as mensagens
	> (overload de msgs trocadas), apenas nao as mostra. No caso do pull,
	> voce seleciona o que voce quer pedir ao servidor, no caso, apenas as
	> msgs da Tiazinha.
	
	Acho que não estou comprendendo como planeja fazer isso no caso do
	modelo PULL: se você pede ao servidor algumas mensajens (segundo algum
	criterio), o servidor terá que poder filtrar mensajens segundo ese
	criterio. Se esse é o caso, não muda muito com a implementação da mesma
	funcionalidade no modelo PUSH: quando um cliente se registra para ser
	notificado, também registra algum tipo de filtro (igualmente expressivo
	que o filtro que você especificaria  no modelo PULL) e quando o servidor
	precissa enviar as mensajens, elas serão filtradas antes de serem
	enviadas. Logo, não tem congestão nem processamento adicional no
	cliente.
	
	
	> Voce ateh pode implementar isso no push, mas teria de ligar o cliente a um
	> conjunto de pessoas, ao inves de uma sala.
	
	Não necessariamente. Um cliente ficaría ligado só a um filtro (que pode
	ser implementado genéricamente para filtrar por pessoas, numero de
	mensajem, etc.)
	
	
	> O problema do push eh: ele eh TOTALMENTE dependente da implementacao do
	> servidor, o pull nem tanto, voce ESCOLHE o que quer,
	
	Acho que esse é o ponto: mesmo no modelo PULL, a escolha implica em uma
	funcionalidade de filtrajem que o servidor deve oferecer.
	
	Porem o dito acima, acho que o verdadeiro ponto fraco do modelo PUSH é
	que é stateful, i.e., precisa guardar estado para cada cliente
	registrado, e por isso a escalabilidade está mais dependente do
	servidor.
	
	falou,
	-jorge
	
	
	
	--
	 Jorge Francisco Del Teglia  
	
	<PROTECTED>
	<PROTECTED>