Tengo un chat en mi sitio web y necesita enviar muchas solicitudes AJAX a mi servidor (al menos 2 veces por segundo) para verificar si hay mensajes nuevos.
¿Hay alguna forma de reducir el número de solicitudes y volver a cargar mensajes solo después de que se hayan publicado?
Sé que no hay posibilidad de usar sockets (porque no puedo usar flash, java o funciones de HTML5), pero tal vez hay algún truco relacionado con mantener vivo opción de HTTP 1.1?Cómo reducir un número de solicitudes AJAX para un chat?
Respuesta
Sí, hay una manera fácil de hacerlo. Efectivamente, lo que hace es aumentar el tiempo de espera para su llamada ajax a un tiempo de espera largo (por ejemplo, 5 minutos). Su servidor recibe la solicitud y luego la retiene, ocasionalmente buscando nuevas respuestas. Luego, cuando se justifica una nueva respuesta, simplemente responde a la solicitud y su cliente recibe la actualización.
Si no se responde en 5 minutos, su cliente simplemente expira y comienza una nueva solicitud de AJAX. Su servidor, si no ha respondido en 5 minutos, generalmente termina la solicitud retenida para que salga de la cola.
Efectivamente 'empujando hacia el lado del servidor'.
Guau, ¡esta es una muy buena técnica! – tsds
Cualquier enlace que pueda proporcionar para ejemplos Tejs? – JClaspill
No hay enlaces, pero debería ser bastante fácil de hacer en su servidor web de elección. Los ayudantes de jQuery ajax facilitan establecer un tiempo de espera prolongado. – Tejs
- 1. Un número razonable de solicitudes de ajax simultáneas y asíncronas
- 2. Chat de Ajax: solo se actualiza si hay un cambio
- 3. ¿Cómo puedo reducir el número de anotaciones en un mapa?
- 4. Cómo reducir las solicitudes css http?
- 5. Solicitudes AJAX de caché
- 6. jQuery Limite el número de solicitudes AJAX simultáneas
- 7. El número de solicitudes Ajax aumenta con live jQuery
- 8. ¿Cómo hacer un chat en línea rápido, liviano y económico con PHP + JS + (MySQL?) + (AJAX?)
- 9. ¿Cómo es posible que GMail Chat pueda realizar solicitudes AJAX sin interacción con el cliente?
- 10. Intentando hacer un seguimiento del número de solicitudes pendientes de AJAX en firefox
- 11. Solicitudes AJAX entre sitios
- 12. Node.JS: ¿Cómo crear un servidor HTTP Chat?
- 13. jquery ajax soporte en línea de chat
- 14. Sincronizar tres solicitudes ajax
- 15. Seguridad de las solicitudes AJAX
- 16. ¿Cómo esperar las solicitudes jQuery Ajax para completar desde WatiN?
- 17. Solicitudes/respuestas Ajax: ¿cómo hacerlas más rápidas?
- 18. ¿Cómo rastrear las solicitudes de Ajax con Google Analytics?
- 19. Ajax solicitudes de subdominio cruzado?
- 20. ¿Creando un diseño de chat?
- 21. Fuga de memoria con solicitudes AJAX + jQuery
- 22. Implementando un chat al azar entre personas
- 23. Cómo reducir el número de dependencias inyectadas en el controlador
- 24. Solicitudes AJAX Sincrónico Vs Asincrónico
- 25. "Deje de ejecutar este script" - IE para solicitudes AJAX grandes
- 26. Reducir el número de llamadas a getTableCellRendererComponent
- 27. $ .ajax ignorando el parámetro de datos para las solicitudes DELETE
- 28. URL relativas en solicitudes AJAX
- 29. ¿Cómo reduzco el número de solicitudes redundantes con mod_perl correctamente?
- 30. Uso de Google Analytics para rastrear solicitudes AJAX
Use socket.io;) que usa websockets y degrada a Ajax si los websockets no están disponibles. – Raynos