Hay muchos artículos excelentes que explican cómo funciona SSL/TLS
en este sitio, pero me gustaría comentar el problema de rendimiento. La cosa es que estoy sirviendo mi contenido web a través de HTTPS
y el protocolo de enlace SSL toma mucho tiempo.
Por lo que entiendo en este momento, la conexión a través de HTTPS
se crea de la siguiente manera:
- TCP handshake
- protocolo de enlace SSL
- datos HTTP
Ahora, teniendo en cuenta que no puedo usar el encabezado keep-alive
en HTTP
, ¿eso significa que con cada solicitud se activan esos 3 puntos? Mis pruebas empíricas muestran que la parte del protocolo de enlace SSL que es extra de plain HTTP
toma alrededor de 200-300ms. Para cargar la página principal, la aplicación está realizando más de 10 solicitudes, lo que significaría 200 * 10 = 2 segundos, ¿verdad? Eso es demasiado.
Entonces la pregunta es: ¿Cómo puedo optimizar esas rutinas? Y también, ¿cómo se distribuye el rendimiento entre el servidor y el cliente durante el protocolo SSL? Parece que el servidor tiene que hacer muchos más cálculos, ¿es correcto?