No puedo hablar con Quora específicamente. Pero en términos generales, hay dos enfoques para manejar datos “en tiempo real” en aplicaciones web. El enfoque tradicional se llama votación . En el sondeo, tiene JavaScript del lado del cliente que realiza solicitudes de Ajax al servidor en un intervalo de repetición para buscar actualizaciones de los datos. El sondeo generalmente es simple de implementar, pero dependiendo del intervalo, tiende a ser intensivo en recursos o no en tiempo real . Hasta hace solo un par de años, el sondeo era la única solución y todavía se usa ampliamente. El nuevo atractivo en las aplicaciones web en tiempo real se llama sockets web . Los sockets web son una API de JavaScript relativamente nueva integrada en los navegadores modernos y se encuentra bajo el paraguas de HTML5 . Los sockets web proporcionan una conexión bidireccional y persistente entre el cliente y el servidor. Dos vías, lo que significa que el servidor puede enviar mensajes al cliente y el cliente puede enviar mensajes al servidor. Persistente, lo que significa que en la carga de la página, hay un apretón de manos inicial , después del cual la conexión permanece abierta durante la vida útil de la página. Hay varios marcos de JavaScript que ofrecen buenas abstracciones en la parte superior de la API de sockets web, pero en general, es una implementación más compleja que el sondeo. Sin embargo, una vez configurado, utiliza pocos recursos y es realmente “en tiempo real”.
¿Cómo maneja Quora todos los eventos en tiempo real que ocurren en el sitio?
Related Content
¿Cuál es el mejor uso de Node.js?
Cómo optimizar el tiempo de respuesta del servidor
Cómo agregar una API meteorológica a mi sitio web usando Javascript
More Interesting
¿Es seguro usar dos puntos: en la ruta de una URL?
¿Debería llamarse programador a un desarrollador Front End?
¿Cuáles son las ventajas de usar meteoros sobre tornado, o viceversa?
¿Cómo hace un novato en desarrollo web para obtener una pasantía?
¿Por qué mi página de destino no se está convirtiendo?
¿Cómo redirijo la URL raíz a la interfaz de inicio de sesión en Limesurvey?
¿Cuál es el propósito de "/ p /" en una url de Instagram?
¿Cuál es la mejor manera de probar el diseño web receptivo?
¿Sería mejor para tu carrera aprender y dominar Python o Node.js?
¿Cuál es la forma más rápida y gratuita de aprender Drupal?
¿Cuáles serían los mejores proyectos para bases de datos web?