Tecnología Push

Tecnología Push

Tecnología Push, o servidor push, describe un estilo de comunicaciones sobre Internet donde la petición de una transacción se origina en el servidor. Por el contrario a la Tecnología Pull, donde la petición es originada en el cliente.

Contenido

Uso General

Los servicios Push están basados, a menudo, en preferencias de información a medida. Es decir, un modelo publicador/suscriptor. Un cliente deberá suscribirse a varios canales de información. Cuando el nuevo contenido está disponible en uno de estos canales, el servidor deberá enviar la información al usuario.

Las conferencias sincronizadas y la mensajería instantánea son ejemplos típicos de los servicios tipo 'push'. Los mensajes de chat y, en ocasiones archivos, son enviados al usuario tan pronto estos son recibidos por el sistema de mensajería. Los programas descentralizados P2P (como WASTE) y los centralizados (como IRC o Jabber) permiten hacer 'push' de archivos. Es decir, el remitente inicia la transferencia de datos, en vez del destinatario.

El Email es un sistema push: el protocolo the SMTP en el que está basado, es un protocolo push (ver Push e-mail). Sin embargo, el último paso: desde el servidor de mail, hasta el escritorio del usuario usa un protocolo pull como POP3 o IMAP. Los clientes modernos de e-mail hacen que este paso parezca instantáneo (hacen uso de consultas periódicas al servidor de correo, buscando nuevos mensajes). El protocolo IMAP incluye el comando IDLE, que permite al servidor comunicarle al cliente cuándo ha llegado un nuevo correo. El BlackBerry original fue el primer ejemplo popular de tecnología push en un contexto inalámbrico.

Otro ejemplo popular de tecnología push en Internet fue PointCast Network, que ganó popularidad en los 90s. Este se encargaba de repartir y guardar datos. Ambos Netscape y Microsoft lo integraron en sus programas durante la guerra de los navegadores, pero fue reemplazado mas tarde, en los 2000 por RSS (una tecnología pull).

Otros usos de aplicaciones web que hacen uso de la tecnología push, incluye a la distribución de datos de mercados (inventarios), sistemas de mensajería/chat online (webchat), subastas, juegos y casinos online, resultado de deportes, monitorización de consolas y de redes.

Tecnologías

HTTP server push

HTTP server push (conocido como HTTP streaming) es un mecanismo de envío de datos desde un servidor web hacia un navegador web. HTTP server push puede ser realizado a través de muchos mecanismos.

Generalmente el servidor web no termina la respuesta después que los datos han sido enviados al cliente. El servidor web deja el canal abierto para que si un evento ocurre, éste pueda ser enviado inmediatamente a uno o a muchos clientes. De otra forma, los datos deberían ser puestos en una cola hasta que se reciba la próxima petición del cliente. Muchos servidores web ofrecen esta funcionalidad a través de CGI (por ejemplo NPH scripts en Apache).

Otro mecanismo está relacionado con un tipo especial MIME llamado multipart/x-mixed-replace, que fue introducido por Netscape en 1995. Los Web browsers deberían interpretarlo como un cambio en el documento en el momento que el servidor publica una nueva versión al cliente.[1] [2] Hoy continúa siendo soportado por Firefox, Opera y Safari, pero tradicionalmente es ignorado Microsoft.[3] Puede ser aplicado a documentos HTML, pero para difusión de imágenes en aplicaciones con webcam.

El WHATWG tiene elaborado un borrador de una especificación Web Applications 1.0[4] que publica contenido al cliente usando tecnología push. El 1 de septiembre del 2006, el navegador Opera implementó esta tecnología experimental en una característica llamada "Server-Sent Events."[5] [6]

Java pushlet

Un pushlet es una técnica desarrollada originalmente para aplicaciones web sobre Java, aunque las mismas técnicas pueden ser empleadas, en otros frameworks web. En esta técnica, el servidor toma ventaja de las conexiones persistentes HTTP y deja la respuesta al cliente "abierta" (es decir, no la termina), dejando al browser en un continuo estado de "carga" en el momento que la página inicial debería haber sido completada. El servidor, luego, utiliza periódicamente rutinas de javascript para actualizar el contenido de la página, consiguiendo de esta manera, la capacidad de push. Usando esta técnica, el cliente no necesita applets Java u otros plug-ins para mantener una conexión abierta con el servidor. Los clientes pueden ser notificados automáticamente de nuevos eventos, puestos por el server.[7] [8] Una importante desventaja de este método, sin embargo, es la pérdida del control que tiene el servidor sobre los tiempos de expiración. Un refresco de la página siempre es necesario si la página expira o el browser es cerrado.

Long polling

Long polling es una variación de la técnica tradicional de polling y permite emular información colocada desde un servidor a un cliente en forma similar al polling normal. Sin embargo, si el servidor no tiene información disponible para el cliente, en vez de enviar una respuesta vacía, el servidor guarda la petición y espera a que alguna información esté disponible. Una vez la información está disponible (o después de un tiempo establecido), se envía una respuesta completa al cliente. Entonces el cliente normalmente realizará un re-pedido de información al servidor, para que éste siempre tenga un pedido en espera, que puede ser usado para responder a un evento.

Long polling no es en sí mismo una tecnología push, pero puede ser usada bajo circunstancias donde un push verdadero no es posible.

Otras tecnologías

El término Comet ha sido usado para describir las tecnologías push aplicadas a las aplicaciones web con AJAX. Se trata de un Término global para una combinación de tecnologías web como HTTP server push y long polling.

Véase también

Referencias

  1. Client pull/Server push implementations
  2. CGI Programming on the World Wide Web O'Reilly book explaining how to use Netscape server-push
  3. Server-Push Documents (HTML & XHTML: The Definitive Guide) O'Reilly book explaining server-push
  4. «Web Applications 1.0 specification».
  5. «Event Streaming to Web Browsers» (01-09-2006). Consultado el 23-03-2007.
  6. «Opera takes the lead with AJAX support among browsers: More efficient streaming» (01-09-2007). Consultado el 23-03-2007.
  7. Pushlets introduction
  8. JavaWorld article about pushlets

Enlaces externos


Wikimedia foundation. 2010.

Mira otros diccionarios:

  • Push-Pull — Saltar a navegación, búsqueda En tecnología e ingeniería electrónica, el término push pull (literalmente empujar halar) se refiere o está asociado principalmente a los siguientes temas o conceptos: Un tipo de salida de circuito electrónico… …   Wikipedia Español

  • WebSocket — es una tecnología que proporciona un canal de comunicación bidireccional y full duplex sobre un único socket TCP. Está diseñada para ser implementada en navegadores y servidores web, pero puede utilizarse por cualquier aplicación cliente/servidor …   Wikipedia Español

  • Comet — En el desarrollo web, Comet es un neologismo para describir un modelo de aplicación web en el que una petición HTTP mantenida abierta permite a un servidor web enviar datos a un navegador por Tecnología Push, sin que el navegador los solicite… …   Wikipedia Español

  • MobileMe — Desarrollador Apple Inc. me.com …   Wikipedia Español

  • Red de entrega de contenidos — El sistema tradicional de distribución de datos y CDN. Una red de entrega de contenidos o red de distribución de contenidos (CDN en inglés) es un sistema de computadoras que contienen copias de datos, colocados en varios puntos de una red con el… …   Wikipedia Español

  • IDEN — Saltar a navegación, búsqueda iDEN Red Mejorada Digital Integrada (Integrated Digital Enhanced Network) es una tecnología inalámbrica desarrollada por Motorola en 1994, proporciona a los usuarios múltiples servicios en un único e integrado… …   Wikipedia Español

  • iDEN — Este artículo o sección necesita referencias que aparezcan en una publicación acreditada, como revistas especializadas, monografías, prensa diaria o páginas de Internet fidedignas. Puedes añadirlas así o avisar al …   Wikipedia Español

  • Wireless Application Protocol — o WAP (protocolo de aplicaciones inalámbricas) es un estándar abierto internacional para aplicaciones que utilizan las comunicaciones inalámbricas, p.ej. acceso a servicios de Internet desde un teléfono móvil. Se trata de la especificación de un… …   Wikipedia Español

  • Vehículo de combustible flexible — Para vehículos que operan con otros combustibles o propulsión alternativa, véase vehículo de combustible alternativo. Modelos típicos de automóvil brasileño de combustible flexible de varios fabricantes, llamados carros flex , que funcionan con… …   Wikipedia Español

  • Flexible-fuel vehicle — For other types of vehicles, see Alternative fuel vehicle and Hybrid vehicle. The Ford Model T was the first commercial flex fuel vehicle. The engine was capable of running on gasoline or ethanol, or a mix of both. A flexible fuel vehicle (FFV)… …   Wikipedia

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”