Apache Server Hello em SSL lento

4

Estou tentando depurar um problema com SSL no Apache. Eu usei o Wireshark para capturar os pacotes, e eu vejo a mensagem de saudação do cliente sair, e então cerca de 10 segundos depois, eu recebo um servidor de saudação. Depois que a conexão SSL é estabelecida, a solicitação HTTPS subsequente é mais rápida.

Estou usando / dev / urandom para entropia, e acho que tenho bastante disponibilidade. Minha carga de CPU é quase nada, mas recebo cerca de 10 solicitações / segundo.

Estou usando as configurações de estoque no Apache 2.2.14 no Ubuntu 10.04. Meu certificado é um certificado SAN da GoDaddy.

Quais etapas devo seguir para descobrir por que meu servidor leva tanto tempo para responder por SSL? O HTTP é rápido, mas o HTTPS está muito lento.

Editar:

Aqui está uma imagem que mostra o hello do cliente e, em seguida, cerca de 10 segundos depois, o servidor hello:

    
por Matt 17.12.2012 / 20:03

2 respostas

0

Eu aumentei o MaxClients na configuração do apache para 256, recarreguei o apache e as coisas melhoraram drasticamente. Eu estou tendo dificuldade em acreditar que esse era o problema, porque o HTTP estava agitado como sempre, mas o HTTPS era lento.

apache2ctl status relatórios "185 solicitações sendo processadas atualmente" e a configuração MaxClients era 150 antes de fazer a alteração. Então, faz sentido, mas, novamente, por que o HTTP seria rápido?

cat /proc/sys/kernel/random/entropy_avail relatórios 190.

O Apache 2.2.14 é a versão mais recente do apache disponível para o Ubuntu 10.04.

    
por 18.12.2012 / 20:06
0

Aumentar o MaxClients provavelmente resolverá esse problema.

Observe que o valor padrão de MaxClients é 256, portanto, se essa alteração resolver o problema, provavelmente você teria uma configuração para MaxRequestWorkers que era algo menor. Observe que MaxClients é o nome reprovado e MaxRequestWorkers é o novo nome, portanto, se você tivesse um MaxRequestWorkers menor e, em seguida, adicionasse um MaxClients mais tarde na configuração, o valor MaxClients substituía o valor mais baixo de MaxRequestWorkers, corrigindo o problema.

Por que isso aconteceu apenas em HTTPS, eu suspeito que seja porque os clientes do navegador são mais agressivos em manter as conexões ativas quando em HTTPS (compreensivelmente). Por isso, é muito mais fácil ficar sem clientes disponíveis.

    
por 02.05.2017 / 17:40