Estoy escribiendo una aplicación web AJAX que usa Comet/Long Polling para mantener la página web actualizada, y noté que en Chrome trata la página como si siempre estuviera cargándose (icon para la pestaña sigue girando).El indicador de carga de Chrome sigue girando durante XMLHttpRequest
Pensé que esto era normal para Google Chrome + Ajax porque incluso Google Wave tenía este comportamiento.
Bueno, hoy noté que Google Wave ya no mantiene el icono de carga girando, ¿alguien sabe cómo lo solucionaron?
Aquí es mi ajax código de llamada
var xmlHttpReq = false;
// Mozilla/Safari
if (window.XMLHttpRequest) {
xmlHttpReq = new XMLHttpRequest();
}
// IE
else if (window.ActiveXObject) {
xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlHttpReq.open('GET', myURL, true);
xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlHttpReq.onreadystatechange = function() {
if (xmlHttpReq.readyState == 4) {
updatePage(xmlHttpReq.responseText);
}
}
xmlHttpReq.send(null);
¿Pero no sondear cada x segundos aumentaría la carga en el servidor? Supongo que puede irse de otra manera ahora que lo pienso (Long Polling vs Poling cada x segundos). Pero no estoy seguro de que esté convencido de que cambiaron de Long Polling. –
@teehoo: Una vez leí que las largas encuestas son pesadas sobre los recursos, ya que muchas conexiones deben mantenerse abiertas al mismo tiempo, algo por lo que HTTP no está diseñado. Pero no soy un experto en servidores, así que por favor corrígeme si me equivoco. –
Supongo que mantener abiertas las conexiones requiere más memoria, ¿pero las conexiones de apertura y cierre requieren más CPU + ancho de banda constantemente? Gracias por analizar esto, verificaré que funcione cuando llegue a casa. –