Teste de Carga Possível erro

Ontem estava realizando testes via loader.io, aguentando 10mil acessos sem bater 100% de cpu.

Porém hoje quando retomei os testes esta batendo 100% com 20 pessoas ativas. Já desativei e ativei o fastcgi e não resolve. Parece que esta sem cash pelo pequeno suporte comparado aos testes de ontem.

O ambiente de teste e exatamente o mesmo. Não mudei absolutamente nada. Porem, ontem eu ativei o ufw e o fail2ban quando finalizei os testes.

Eles seriam o motivo de eu não estar conseguindo suporte a trafego ? qual o comando para eu desativar e testar sem eles ?

Dificilmente o ufw e o fail2ban derrubou dessa forma o suporte a trafego. O que pode estar acontecendo ?

Possivelmente é o Fail2Ban
Essa é justamente a função dele.
Segurar o acessos em massa quando partem de um mesmo endereço de IP.

Se for trafego real, vindo de ips diferentes o Fail2ban não vai impedir o trafego e consequentemente não vai ter alta carga de CPU.

Faz um teste desabilitando o Fail2Ban com wo stack remove --fail2ban

Maravilha Gabriel, irei refazer o teste.

O ngxblocker tive que desativar, pq ele derrubava o teste de carga. Agora, caso for o Fail2Ban ele n esta derrubando o teste, mas subindo o uso de CPU ao máximo.

Desativei o fail2ban e dei um reboot.

Ainda assim não solucionou.

:thinking:

atualização:

encontrei uns erros no logs php:

2024/05/13 03:05:58 [error] 29392#29392: *2078 no live upstreams while connecting to upstream, client: 18.204.4.113, server: meusite.com, request: “GET / HTTP/1.1”, upstream: “fastcgi://php82”, host: “meusite.com”

obs: mudei o nome do site

Acho que identifiquei o problema.

Quando o proxy do cloudflare esta ativo a cpu atinge 100% com em média 50 acessos. Sem o proxy consigo subir para mais de 10mil com cpu entre 60 a 80%.

O Cloudflare não é para aliviar a carga do servidor ? porque esta causando esse impacto ? pode ser devido ao teste simulado do Loader.io ? ou tem alguma outra explicação ?

Teoricamente não deveria ser essa a causa.
Mas vou investigar isso.
Dependendo de como o CloudFlare está enviando as solicitações ao server essa pode sim ser a causa.
É possível que o cloud flare está “destorcendo” o rastreamento destes acessos e o server está refazendo o cache para cada acesso.

Aguardo sua posição. Estou curioso sobre isso. Vou fazendo testes por aqui também… qualquer novidade exponho aqui.

Gabriel, outra coisa que reparei foi que depois de ter instalado o ufw e o fail2ban o cpu ta subindo um pouco mais também, mas estou conseguindo alcançar 10k sem bater 100 de uso de CPU.

Quanto a isso acredito ser normal devido a analise de segurança em cada acesso, estou correto ?

Sim, é normal subir um pouco o uso de recursos do server com a instalação do fail2ban.

Gabriel, em um segundo teste…

Identifiquei uma outra questão, o fastcgi não faz cache de página correto ?

Fiz um teste com wprocket e fastcgi. E no teste de carga, ambos são parecidos.

Porém, realizei um outro teste de atualização de página, basicamente é atualizar a página muitas vezes por segundo.

Nesse segundo teste o wprocket não consumiu praticamente nada de cpu. Mas, o fastcgi consumiu muito a cpu quase 100%.

Só estou tentando entender a sistemática, pq em teste de carga ambos são parecidos… Porem em teste de carregamento/atualização de página o fastcgi consome muito a cpu.

O FastCgi faz somente cache de pagina, ele não faz cache de objeto.

Sobre seu teste atualizando a pagina, você estava logado ou não no site?

o CGI não faz cache de página igual ao wprocket pelo que entendi, ele é um protocolo. Ele aguenta muitos acessos simultâneos, mas em atualização de página ele faz uma nova requisição, ao contrário do wprocket que fornece uma página estática em cache e não demanda cpu.

Quando a isso tranquilo, se você quiser realizar o teste por desencargo.

Os testes que eu realizo, são em páginas anonimas. não faço teste no admin.

Sobre o assunto anterior o cloudflare ativo continua subindo muito a cpu. Por enquanto vou manter desativado.