Então eu tenho esse webapp baseado em tomcat. Parte dessa webapp permite fazer o upload de um arquivo que é verificado em um banco de dados de back-end. Esse processo leva muito tempo, até 15 minutos em alguns casos. Agora o problema é que estou recebendo timeouts na marca de 5 minutos quando executo esse processo através do apache, mas não quando o executo diretamente contra o tomcat. E então fica ainda mais estranho porque o processo funciona bem através do chrome, mesmo através do proxy. IE e FF engasgam com isso, ambos na marca de 5 minutos. Olhando para o tráfego de rede, parece que o lado do cliente está enviando a desconexão TCP e matando a conexão.
(para resumir)
Diretamente contra o tomcat via HTTP:
Através do proxy via HTTP / HTTPS:
Como funciona por meio do chrome, sou tentado a pensar que é um problema do IE / FF. Mas como funciona via IE / FF quando ignorando o proxy, estou inclinado a pensar que é um problema de proxy. E em ambos os casos, estou perplexo. E as pessoas estão começando a murmurar. Então, alguém tem alguma idéia sobre o porquê isso está acontecendo? Estou feliz em postar qualquer arquivo log / conf necessário ...
Meu proxy é configurado da seguinte maneira:
ProxyPass /unit ajp://appserver:8100/unit timeout=1800
ProxyPassReverse /unit ajp://appserver:8100/unit
EDIT: Adicionando versões:
EDIT 2: Adicionando amostra de tráfego:
Isto foi retirado do servidor (10.122.39.81).
17:01:49.048093 IP 10.3.0.50.10448 > 10.122.39.81.443: . 102019:103231(1212) ack 146 win 65303
17:01:49.048531 IP 10.122.39.81.443 > 10.3.0.50.10448: . ack 103231 win 65535
17:01:49.048583 IP 10.3.0.50.10448 > 10.122.39.81.443: . 103231:104443(1212) ack 146 win 65303
17:01:49.048685 IP 10.3.0.50.10448 > 10.122.39.81.443: P 104443:105633(1190) ack 146 win 65303
17:01:49.048690 IP 10.122.39.81.443 > 10.3.0.50.10448: . ack 105633 win 65535
17:05:26.337167 IP 10.3.0.50.10448 > 10.122.39.81.443: R 2183272713:2183272713(0) ack 1747376881 win 9300
Como você pode ver, o fim do sinal de conexão vem do cliente, e não do servidor. Normalmente, eu diria apenas "ok, isso é um problema do lado do cliente". A única coisa que me impede disso é o fato de que o mesmo processo exato é bem-sucedido ao acessar o servidor tomcat diretamente pela porta 8001.
Neste ponto, Meus pensamentos são:
OR