Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

498
Vistas
¿Cómo usar SNI correctamente? (Dos estilos de escritura Nginx SNI diferentes)

¿Cuál es la diferencia entre estos dos estilos diferentes de escritura SNI? ¿Alguien podría juzgar sus diferencias por principio, desempeño, etc.?

Estilo1

 stream{ map $ssl_preread_server_name $backend_name{ A.example.com A; B.example.com B; } upsteam A{ server 127.0.0.1:10086 } upsteam B{ server 127.0.0.1:10087 } } http{ server{ listen 10086 ssl http2; server_name A.example.com ... } }

estilo2

 server { listen 127.0.0.1:443 ssl; server_name A.example.com; ... } server { listen 127.0.0.1:443 ssl; server_name B.example.com; ... }
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

A partir de la pregunta, parece que está intentando escuchar en el puerto 443 para diferentes nombres de host. Las solicitudes que vienen con el nombre de host A.example.com deben reenviarse a 127.0.0.1:10086 mientras que con el nombre de host B.example.com irían a 127.0.0.1:10087 . Permítanme explicar lo que sucede detrás de escena en ambos estilos.

Estilo 1

El bloque de stream le permite equilibrar la carga sobre TCP/UDP. El módulo ngx_stream_ssl_preread_module le permite extraer información de la solicitud sin terminación SSL/TLS. Está utilizando el map para que las conexiones que vienen como A.exammple.com establezcan A en la variable $backend_name mientras que las que vienen como B.example.com establezcan B en la variable $backend_name . Según sus bloques upstream , las solicitudes se reenvían a 127.0.0.1:10086 o 127.0.0.1:10087 . Dado que hay un bloque http con bloques de servidor escuchando en los puertos 10086 y 10087 respectivamente, crea una nueva conexión cada vez que cumple con esas solicitudes. La terminación ssl también ocurre dentro del bloque http.

estilo 2

Ambos bloques de servidores escuchan a través de 443 y, según el nombre de host de la solicitud, pasan por uno de los bloques de server . La terminación de ssl ocurre antes de que la solicitud vaya a los puertos donde la aplicación realmente se está ejecutando.

Ambos estilos son buenos para lograr esto, pero personalmente prefiero el Style 2 ya que la terminación de SSL se maneja antes del reenvío de las solicitudes. Además, en el Style 1 se crea una conexión adicional que, en mi opinión, supone una ligera sobrecarga de rendimiento.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda