Quando executo uma strace no processo do apache, vejo muitos gettimeofday antes de & após solicitação GET, mesmo quando o Apache retorna um arquivo estático como um arquivo de imagem. Isso resulta em um longo período de inatividade antes que o Apache 2.4 (com o php 5.6, fcgid) atenda à solicitação GET.
1616 0.000048 read(156, "GET / HTTP/1.1\r\n", 8000) = 16 1616 0.000099 gettimeofday({1430592206, 931114}, NULL) = 0 1616 0.000044 gettimeofday({1430592206, 931156}, NULL) = 0 1616 0.000035 read(156, 0x7f01d4007018, 8000) = -1 EAGAIN (Resource temporarily unavailable) 1616 0.000042 poll([{fd=156, events=POLLIN}], 1, 7915439 1670 0.020724 <... epoll_wait resumed> {}, 100, 100) = 0 1670 0.000039 gettimeofday({1430592206, 951998}, NULL) = 0 1670 0.000037 gettimeofday({1430592206, 952034}, NULL) = 0 1670 0.000033 gettimeofday({1430592206, 952066}, NULL) = 0 1670 0.000032 epoll_wait(155, {}, 100, 100) = 0 1670 0.100265 gettimeofday({1430592207, 52366}, NULL) = 0 1670 0.000041 gettimeofday({1430592207, 52405}, NULL) = 0 1670 0.000033 gettimeofday({1430592207, 52437}, NULL) = 0 1670 0.000033 epoll_wait(155, {}, 100, 100) = 0 1670 0.100324 gettimeofday({1430592207, 152804}, NULL) = 0 1670 0.000066 gettimeofday({1430592207, 152865}, NULL) = 0 1670 0.000073 gettimeofday({1430592207, 152941}, NULL) = 0 1670 0.000060 epoll_wait(155, {}, 100, 100) = 0 1670 0.100251 gettimeofday({1430592207, 253247}, NULL) = 0 1670 0.000039 gettimeofday({1430592207, 253284}, NULL) = 0 1670 0.000032 gettimeofday({1430592207, 253316}, NULL) = 0 1670 0.000032 epoll_wait(155, {}, 100, 100) = 0 1670 0.100241 gettimeofday({1430592207, 353597}, NULL) = 0 1670 0.000061 gettimeofday({1430592207, 353653}, NULL) = 0 1670 0.000071 gettimeofday({1430592207, 353727}, NULL) = 0 1670 0.000045 epoll_wait(155, {}, 100, 100) = 0Há muitos deles antes que o servidor realmente retorne a resposta para GET.
O que eu fiz:
echo "kernel.vsyscall64 = 2" >> /etc/sysctl.conf& editando sysctl depois.
Isso aumentou ligeiramente a velocidade de resposta do Apache 2.4, mas ainda é lento e há muito Gettimeofday. Eu não tenho modsecurity e apenas módulos padrão do Apache. No entanto, eu suspeito de um módulo.
Eu verifiquei se era o ioncube 5.0.2, mas não era.
Isso é normal? Se não, você acha que poderia vir de um módulo do Apache?
edit: parece que corresponde a 3 timestamps copiados para 3 logs, anotando três erros / avisos.
obrigado.