Ir para conteúdo

POWERED BY:

Arquivado

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

dzanella

XMLHttpRequest demorado na extranet

Recommended Posts

Olá pessoal.

Tenho uma página que carrega alguns elementos utilizando XMLHttpRequest em outra página.

Ele funciona perfeitamente na intranet da empresa, mas quando alguém tenta acessar isso de fora da empresa, os requests demoram muito.

Fiz um teste externo e eles chegam a demorar quase 2 minutos.

Pra garantir que o problema não era no arquivo requisitado nem na consulta do banco que acontece nele, fiz um request de um arquivo com 3 linhas e a demora foi a mesma.

 

segue o trecho do código:

var xmlhttpIndicadores;
	xmlhttpIndicadores = new XMLHttpRequest();

	xmlhttpIndicadores.onreadystatechange = function () {
		if (xmlhttpIndicadores.readyState == 4 && xmlhttpIndicadores.status == 200) {
			document.getElementById( "idDivIndicadoresDisponiveis" ).innerHTML = xmlhttpIndicadores.responseText;
		}
	}

	xmlhttpIndicadores.open("POST", "ExibirIndicadoresDisponiveisESelecionadosAJAX.asp", true);
	xmlhttpIndicadores.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlhttpIndicadores.send( codigoObjetivo + codigoIndicador + "grupoEmpresa=" + grupoEmpresa + "&ano=" + ano );

	var xmlhttpEstrutura;
	xmlhttpEstrutura = new XMLHttpRequest();

	xmlhttpEstrutura.onreadystatechange = function () {
		if (xmlhttpEstrutura.readyState == 4 && xmlhttpEstrutura.status == 200) {
			document.getElementById( "idDivEstruturaObjetivoIndicador" ).innerHTML = xmlhttpEstrutura.responseText;
		}
	}

	xmlhttpEstrutura.open("POST", "ExibirEstruturaObjetivosIndicadoresSelecionadosAJAX.asp", true);
	xmlhttpEstrutura.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlhttpEstrutura.send( codigoObjetivo + codigoIndicador + "grupoEmpresa=" + grupoEmpresa + "&ano=" + ano );

Já quebrei a cabeça e pesquisei muito na net mas não consegui chegar à uma solução.

Alguém já passou por isso?

Grato!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não há como ser o código o problema.

 

A demora é uma soma de latência de rede + tempo de resposta

 

Se continua demorando bastante, seja para pesquisar no banco, ou só trazer um texto, então a rede realmente é o gargalo.

Existe algum firewall ? Qual é a banda de saída ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pois é William!

To pensando em colocar isso em outro servidor pra testar...

o que acho estranho é q o carregamento de todas as paginas é normal...

só demora quando uso o XMLHttpRequest via javacript!

 

 

Então pessoal...

Criei um arquivo simples com chamadas simples e coloquei no servidor da empresa e em outro servidor para testes...

Realmente no outro servidor funcionou perfeitamente e no da empresa ficaram chamadas penduradas por mais de 1 minuto.

Alguém tem uma ideia do que possa causar isso no servidor?

Grato!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já falei ali em cima..

 

Latência de rede, firewall..

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.