Empuje tecnología

Empuje, o empuje del servidor, describe un estilo de la comunicación basada en Internet donde la petición de una transacción dada es iniciada por el editor o servidor central. Se contrasta con el tirón, donde la petición de la transmisión de la información es iniciada por el receptor o cliente.

Uso general

Empuje los servicios a menudo están basados en preferencias de información expresadas de antemano. Esto se llama un modelo publicar/suscribir. Un cliente podría "suscribir" a varia información "canales". Siempre que el nuevo contenido esté disponible en uno de aquellos canales, el servidor eliminaría esa información al usuario.

La comunicación sincrónica y la mensajería inmediata son ejemplos típicos de servicios de empuje. Mensajes de charla y a veces los archivos se empujan al usuario tan pronto como son recibidos por el servicio de mensajería. Ambos descentralizaron par a par programas (tal tan de DESECHO) y centralizaron programas (como el IRC o XMPP) permiten empujar archivos, el que significa que el remitente inicia la transferencia de datos, más bien que el recipiente.

El correo electrónico también puede ser un sistema de empuje: el protocolo SMTP es un protocolo de empuje (ver el correo electrónico de Empuje). Sin embargo, el último paso — del servidor de correo al ordenador de sobremesa — típicamente usa un protocolo de tirón como POP3 o IMAP. Los clientes del correo electrónico modernos hacen este paso parecer instantáneo votando repetidamente el servidor de correo, con frecuencia examinándolo para ver nuevo correo. El protocolo IMAP incluye la orden OCIOSA, que permite que el servidor diga al cliente cuando los nuevos mensajes llegan. BlackBerry original era el primer ejemplo popular del código de empuje para el correo electrónico en un contexto inalámbrico.

Otro tipo popular del código de empuje de Internet era la Red de PointCast, que ganó la popularidad en los años 1990. Entregó datos de la bolsa y noticias. Tanto Netscape como Microsoft lo integraron en su software a la altura de las guerras del navegador, pero más tarde se desvaneció y se sustituyó en los años 2000 con el RSS (un código de tirón).

Otros usos son las aplicaciones web permitidas del empuje incluso la distribución de datos del mercado (relojes de la reserva), sistemas de charla/mensajería en línea (webchat), subastas, apuestas en línea y juego, resultados del deporte, supervisando consolas y escucha de la red del sensor.

Codificación

Empuje del servidor de HTTP

El empuje del servidor de HTTP (también conocido como HTTP que corre) es un mecanismo para enviar datos de un servidor web a un navegador web. El empuje del servidor de HTTP se puede conseguir a través de varios mecanismos.

Generalmente el servidor web no termina una conexión después de que los datos de respuesta se han servido a un cliente. El servidor web deja la conexión abierta tal que si un acontecimiento se recibe, se puede inmediatamente enviar a uno o clientes múltiples. Por otra parte los datos se tendrían que hacer cola hasta que la siguiente solicitud del cliente se reciba. La mayor parte de servidores web ofrecen esta funcionalidad vía CGI (escrituras de Jefes p.ej No analizadas en el apache).

Otro mecanismo se relaciona con un tipo de la PANTOMIMA especial llamado, que fue introducido por Netscape en 1995. Los navegadores web interpretarían esto como un cambio del documento siempre que el servidor tuviera ganas de empujar una nueva versión al cliente. Todavía es apoyado por Firefox, Ópera y Safari hoy, pero ignorado por el Internet Explorer. Se puede aplicar a documentos de HTML, y también para derramar imágenes en aplicaciones de la cámara conectada a Internet.

Las aplicaciones web WHATWG 1.0 oferta incluyeron un mecanismo para empujar el contenido al cliente. El 1 de septiembre de 2006, el navegador web de la Ópera puso en práctica esta nueva codificación experimental en un rasgo llamado "enviado al Servidor Acontecimientos". Se está estandarizando ahora como la parte de HTML5. Otra parte relacionada de HTML5 es WebSockets API, que permite que un servidor web y cliente comuniquen sobre un dúplex total la conexión de TCP.

Pushlet

En esta técnica, el servidor aprovecha conexiones HTTP persistentes y sale la respuesta permanentemente "se abren" (es decir nunca termina la respuesta), con eficacia engañando el navegador en seguir en el modo "que carga" después de que la carga de la página inicial sería normalmente completa. El servidor entonces periódicamente envía trocitos de JavaScript para actualizar el contenido de la página, así consiguiendo la capacidad de empuje. Usando esta técnica el cliente no necesita Java applets u otros enchufes de unión para guardar una conexión abierta con el servidor. Los clientes serán automáticamente notificados por nuevos acontecimientos, empujados por el servidor. Un inconveniente serio a este método, sin embargo, es la carencia del control que el servidor tiene sobre el navegador finalizar. Una página refresca siempre es necesario si un intervalo de espera ocurre durante el final del navegador.

Mucho tiempo votación

La votación larga es una variación de la técnica de votación tradicional y permite la emulación de un empuje de información de un servidor a un cliente. Con la votación larga, el cliente solicita la información del servidor de un modo similar hacia una encuesta normal. Sin embargo, si el servidor no tiene información disponible para el cliente, en vez de enviar una respuesta vacía, el servidor sostiene la solicitud y espera un poco de información a estar disponible. Una vez que la información se hace disponible (o después de un intervalo de espera conveniente), una respuesta completa se envía al cliente. El cliente solicitará de nuevo inmediatamente normalmente entonces la información del servidor, de modo que el servidor siempre tenga casi una solicitud de espera disponible que puede usar para entregar datos en respuesta a un acontecimiento. En un contexto de la RED/AYAX, la votación larga también se conoce como la programación del Cometa.

La votación larga no es un código de empuje, pero se puede usar en circunstancias donde un verdadero empuje no es posible.

Dirija relevos XMLSocket

Esta técnica, usada por Cbox y otras aplicaciones de charla, hace el uso del objeto de XMLSocket en una película Adobe Flash del pixel solo. Bajo el control de JavaScript, el cliente establece una conexión TCP con un relevo unidireccional en el servidor. El servidor del relevo no lee nada de este enchufe; en cambio inmediatamente envía al cliente un identificador único. Después, el cliente hace un HTTP solicitar al servidor web, incluso con ello este identificador. La aplicación web puede empujar entonces mensajes dirigidos al cliente a un interfaz local del servidor del relevo, que los transmite sobre el enchufe del Destello. La ventaja de este enfoque consiste en que aprecia el natural leído - escriben la asimetría que es típica de muchas aplicaciones web, incluso la charla, y como una consecuencia que ofrece a la alta eficacia. Ya que no acepta datos de enchufes sociables, el servidor del relevo no tiene que votar conexiones TCP sociables en absoluto, haciendo posible sostener decenas de miles abiertas de conexiones concurrentes. En este modelo, el límite de la escala es la pila TCP del sistema operativo del servidor subyacente.

Otra codificación

El término el Cometa ha sido usado para describir tecnologías de empuje aplicadas a aplicaciones web de Ayax. Se usa como un término del paraguas para una combinación de tecnologías de web como empuje del servidor de HTTP y votación larga (ver encima).

XMPP a menudo se usa para aplicaciones de empuje también, sobre todo las extensiones de PubSub. Apple usa este código para su apoyo de empuje de iCloud.

LAS TONTERÍAS son una técnica HTTP longeva usada en XMPP, pero esto se puede usar en la red. La especificación (XEP-0124: Bidirectional-streams Over Synchronous HTTP (BOSH)) lee: Esta especificación define un protocolo de transporte que emula la semántica de una conexión TCP longeva, bidireccional entre dos entidades (como un cliente y un servidor) usando eficazmente a pares de petición/respuesta HTTP sincrónicos múltiples sin requerir el uso de votación frecuente o respuestas chunked.

Véase también

Enlaces externos



Buscar