Explicación detallada de la puerta humana Nginx

1. Introducción a Nginx

Nginx es un servidor web ligero/servidor proxy inverso que ocupa menos memoria y tiene fuertes capacidades concurrentes.Según la prueba oficial, nginx puede soportar 50,000 conexiones concurrentes, y su consumo de recursos como CPU y memoria es muy bajo, y su operación es muy estable.

2. Escenarios de uso

2.1 Escenarios de alta concurrencia

  • equilibrio de carga
    • inserte la descripción de la imagen aquí

    • Distribuya la solicitud/datos [de manera uniforme] a múltiples unidades de operación para su ejecución. La clave para equilibrar la carga es [de manera uniforme]

2.2 Proxy de reenvío

  • El agente aclara quién es el objetivo del comprador y el agente nos ayuda a contactar con el objetivo.

2.3 Proxy inverso

  • El cliente solo necesita enviar la solicitud al servidor proxy, y el servidor proxy reenviará la solicitud al servidor interno para su procesamiento y devolverá el resultado al cliente después del procesamiento.
  • Pero en todo el proceso, el cliente y el servidor de procesamiento real no establecerán una conexión directamente.
  • inserte la descripción de la imagen aquí
    inserte la descripción de la imagen aquí

3. Instalación del código fuente de Nginx

4. Equilibrio de carga de Nginx

4.1 Construcción de grupos

4.2 Estrategia de carga

  • 4.2.1 Solicitud de sondeo

    • A su vez reenviado al servidor configurado
  • 4.2.2 Agregar peso

    • El uso de pesos de servidor puede afectar aún más el algoritmo de equilibrio de carga de nginx. Cuanto mayor sea el peso, más solicitudes se distribuirán.
    • Di que puedes hacerlo, puedes hacerlo o no
    • inserte la descripción de la imagen aquí
  • 4.2.3 Número mínimo de conexiones

    • En el caso de la menor carga de conexión, nginx intentará evitar la distribución de demasiadas solicitudes a servidores de aplicaciones ocupados, pero distribuirá nuevas solicitudes a servidores menos ocupados para evitar la sobrecarga del servidor.
    • inserte la descripción de la imagen aquí
  • 4.2.4. IpHash

    • Garantiza que las solicitudes del mismo cliente siempre se dirigirán al mismo servidor, a menos que este servidor no esté disponible
    • inserte la descripción de la imagen aquí

5. Recursos estáticos

5.1 Cama de imágenes

  • Gestión unificada de imágenes por servidor externo

5.2 Configurar recursos estáticos

6. Linux único para construir múltiples Tomcats

6.1 Copia múltiple

inserte la descripción de la imagen aquí

6.2 Variables de entorno

Establecer y ejecutar source /etc/profile

#tomcat8080
export CATALINA_HOME=/opt/bdp/apache-tomcat-8080
export CATALINA_BASE=/opt/bdp/apache-tomcat-8080
export TOMCAT_HOME=/opt/bdp/apache-tomcat-8080
#tomcat18080
export CATALINA_HOME18080=/opt/bdp/apache-tomcat-18080
export CATALINA_BASE18080=/opt/bdp/apache-tomcat-18080
export TOMCAT_HOME18080=/opt/bdp/apache-tomcat-18080

6.3 Archivo servidor.xml

vim apache-tomcat-18080/conf/server.xml

Solo es necesario modificar tomcat18080, 8080 permanece sin cambios

#22--默认为8005--》修改为18005
<Server port="18005" shutdown="SHUTDOWN">  
#69--默认为8080--》修改为18080
<Connector port="18080" protocol="HTTP/1.1" connectionTimeout="20000"
redirectPort="8443" />
#116-默认为8009--》修改为18009
<Connector port="18009" protocol="AJP/1.3" redirectPort="8443" /> 

6.4.Secuencia de comandos catalina.sh

vim apache-tomcat-18080/bin/catalina.sh

Solo falta modificar Tomcat18080, modificar catalina.sh

####################113行开始添加
export CATALINA_BASE=$CATALINA_BASE18080
export CATALINA_HOME=$CATALINA_HOME18080
export TOMCAT_HOME=$TOMCAT_HOME18080

6.5 Iniciar Tomcat

./apache-tomcat-8080/bin/startup.sh
./apache-tomcat-18080/bin/startup.sh

7. Alojamiento virtual

El host virtual utiliza tecnología especial de software y hardware. Divide un host de servidor que se ejecuta en Internet en múltiples hosts "virtuales". Cada host virtual puede ser un sitio web independiente con un nombre de dominio independiente. Con funciones completas de servidor de Internet (WWW, FTP
, correo electrónico, etc.), los hosts virtuales en el mismo host son completamente independientes. Desde la perspectiva de los visitantes del sitio web, cada servidor virtual es exactamente igual que un servidor independiente.

Clasificación

  • 1. Hosts virtuales basados ​​en nombres de dominio, que distinguen hosts virtuales a través de nombres de dominio
  • 2. Hosts virtuales basados ​​en puertos, distinguiendo hosts virtuales a través de puertos

8. Consistencia de la sesión

  • distribución de nodos
    inserte la descripción de la imagen aquí

  • Base de datos de memoria

  • instalar base de datos

    • yum install memcached -y
  • Inicie el servicio de base de datos

  • systemctl status memcached
    systemctl start memcached
    systemctl enable memcached
    vim /etc/sysconfig/memcached
    
  • Gato

    • Copie el paquete jar en el directorio lib del servidor actual

    • Presta atención a la versión de memcached

    • Si una máquina tiene múltiples tomcats, todas las sesiones deben ser consistentes

      • Configurar tomcat/conf/server.xml
      • Si el mismo proyecto quiere compartir la sesión, jvmRoute debe tener el mismo nombre
      • Si solo tienes un gato, ignora este paso
      • <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm18080">
        </Engine>
        
    • Configurar tomcat/conf/context.xml

    • <Manager
        className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
        memcachedNodes="n1:192.168.88.100:11211"
        sticky="true"
        lockingMode="auto"
        sessionBackupAsync="false"
        requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
        sessionBackupTimeout="1000"    
       transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoT
      ranscoderFactory" />
      
    • Reinicie el servidor Tomcat

  • La visita encontró que el mismo servidor puede compartir la sesión, pero diferentes servidores están involucrados en problemas entre dominios.

    • La sesión sigue siendo diferente, debe configurar el dominio de la cookie

Supongo que te gusta

Origin blog.csdn.net/m0_49303490/article/details/126160064
Recomendado
Clasificación