Pergunta

Além da carga pesada óbvio no servidor, é ruim ter várias pesquisas AJAX simultâneas acontecendo ao mesmo tempo? Ou há mesmo um limite para o que um navegador / servidor pode segurar?

Exemplo (todos AJAX polling) ..

  • Função A está em um intervalo de 3 segundos puxando para nova mensagem para um sistema de chat global (como o Facebook / MySpace).

  • Função B é em um segundo intervalo 2 para puxar atualizações e quais ações para mostrar ao usuário (como em um aplicativo de poker online).

  • Função C é relativa a um segundo INTERAL 4, mas também puxa para nova mensagem para um sistema de mensagens separados.

Foi útil?

Solução

Navegadores costumava ter um limite de 4 (ou em casos muito antigos 2) conexões simultâneas por domínio. A maioria dos navegadores modernos têm elevou esta a 6 ou 8 (com base na minha própria testes e algumas leituras de apoio).

Assim ligações de longa votação pode comer esses slots no navegador e potencialmente prevenir outras coisas de baixar rapidamente.

Caso contrário, poderia ser um devorador de largura de banda para as pessoas em conexões lentas (dial-up ou de redes celulares).

Pode haver outros inconvenientes, mas esses são dois grandes que eu vejo.

Outras dicas

Você nunca deve precisar de mais de duas conexões AJAX ativos simultaneamente. Ou você faz longa sondagem, v.g. as responde de servidor com cabeçalhos, mas, em seguida, enviar o corpo da entidade quando há dados para entregar.

Se você executar um esquema de votação como o que você descreve acima, com A, B, C, você pode fazê-lo com um fio de AJAX que alterna entre os 3 pedidos, mas com um conjunto valor de tempo limite para o próximo intervalo de solicitação. Você cria uma linha do tempo imaginária onde você distribui seus pedidos a A, B e C usando um único segmento AJAX.

Eu descobri que alguns dispositivos móveis (por exemplo, iPads) engasga com mais de uma solicitação pendente xhr.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top