Existe uma vantagem em usar o NGINX para proxy reverso sobre o proxy integrado do Tomcat?

3

Temos um aplicativo que é executado no Tomcat em uma instância do EC2. Temos um ELB na frente do EC2 que está configurado com os seguintes ouvintes:

ELB          
port 80   --> nginx  port 80   --> redirect |
port 443 <--> tomcat port 8080           <--- 

Na instância do EC2, temos o nginx em execução e o proxy reverso para redirecionar as conexões na porta 80 para a porta 8080 (Tomcat). Aqui está a configuração:

http {
  server {
    listen 80 default_server;
    server_name _;
    return 301 https://$host$request_uri;
  }
}

O Tomcat, em execução no mesmo servidor, está configurado para a porta 8080:

   <Connector port="8080" 
    maxThreads="300" 
    protocol="org.apache.coyote.http11.Http11NioProtocol"
    connectionTimeout="20000" />

Na maioria das vezes, isso funciona bem, mas isso cria problemas em um pequeno número de casos em que nosso aplicativo retorna tráfego não-HTTPS. Ao pesquisar o problema, encontrei este artigo .

O sistema como está foi configurado parcialmente por um contratante, que favoreceu o uso do nginx em execução na instância do EC2 como proxy reverso. Minha pergunta é, existe uma vantagem em nosso caso de uso de usar o nginx como proxy reverso quando ele está sendo executado no mesmo servidor, se o Tomcat puder executar a mesma função e também redirecionar o tráfego não seguro pela porta segura (como visto no artigo vinculado)? Por que usar o nginx neste caso?

    
por LegendaryDude 01.11.2016 / 16:11

0 respostas