2011-10-19 17 views
5

De manera predeterminada, Connection Encabezado está configurado en Keep-Alive en los navegadores, para que sea posible mantener la conexión abierta para futuras solicitudes del navegador.Configuración del encabezado de solicitud: conexión

Cuando hago el encabezado Connection en close, ¿cuál puede ser la diferencia? ¿Afectará eso a cualquier problema de rendimiento?

(una adición: Estoy instalando cabeza desde xmlhttprequest)

+2

¿Por qué querrías manipular algo así? – bzlm

+1

recibo una respuesta vacía del servidor para la solicitud. Estoy tomando esto en consideración entonces – ajduke

+0

¿Tal vez el 'statusCode: 204 no content' se estaba estableciendo? Esto puede interferir. – MarkHu

Respuesta

0

Se afecta al rendimiento, ya que el recurso más caro es crear socket entre dos máquinas. Entonces, el cliente necesita establecer una nueva conexión en cada solicitud.

+0

Eso es asumiendo que es posible cambiarlo desde dentro de xmlhttprequest. – bzlm

+0

Necesito junto con esto es que, esto es crear una secuencia de solicitud/respuesta al servidor y mantener esta secuencia abierta para siempre para una mayor comunicación con el servidor u otra cosa – ajduke

+0

@bzlm sí, lo estoy cambiando de xmlhttprequest – ajduke

9

Cuando realiza solicitudes con "Conexión: keep-alive", la siguiente solicitud al servidor utilizará la misma conexión TCP. Esto se llama conexión persistente HTTP. Esto ayuda a reducir la carga de la CPU en el lado del servidor y mejora el tiempo de latencia/respuesta.

Si se realiza una solicitud con "Conexión: cerrar" esto indica que una vez que se ha realizado la solicitud, el servidor debe cerrar la conexión. Y así, para cada solicitud, se establecerá una nueva conexión TCP.

De forma predeterminada, el cliente/servidor HTTP 1.1 usa keep-alive mientras que el cliente/servidor HTTP 1.0 no admite keep-alive de forma predeterminada.

Cuestiones relacionadas