PHP is not meant to keep the connection active, even if it is possible, I think it would be easier with Nodejs. But you can set up Apache like this:
httpd.conf
KeepAlive: on/off # :)
MaxKeepAliveRequests: 50 #acho que aqui é mais que suficiente
KeepAliveTimeout: 5 #vá testando, mas creio que esse valor seja ideal
MaxClients: 75 #75 por 1GB, se tem 2GB de RAM, 150
ServerLimit: 75 #Mesmo número do MaxClients
MaxConnectionsPerChild: 2 #Importante, só não deixa o valor 0 "infinito", que é padrão
MaxRequestsPerChild: 2 #mesma função do MaxConnectionsPerChild, veja descrição
Description
KeepAlive: Liga ou desliga.
MaxKeepAliveRequests: Número máximo de requisições que uma conexão poderá efetuar.
KeepAliveTimeout: Quanto tempo a conexão vai esperar por uma nova requisição de um cliente já conectado.
MaxClients: Quantidade de processos filhos do apache
ServerLimit: Use este ao invés de MaxClients se estiver usando prefork MPM, caso não, use ServerLimit e MaxClients no mesmo valor.
MaxConnectionsPerChild: Quantidade máxima de de conexões por uma processo filho, o padrão é 0 "ilimitado", tente colocar um valor que não seja zero, mas que não seja muito alto, isto é algo que você terá que fazer os cálculos para não acabar com a memória
MaxRequestsPerChild: é o mesmo caso do MaxConnectionsPerChild, só use esta opção se estiver usando Apache < 2.3.9. Apache >= 2.3.9 use o MaxConnectionsPerChild
Take care of most of the options mentioned here, can eat server memory if not configured correctly, some you will have to do calculations regarding the available memory and CPU.
If you are using Nginx, look in the documentation and try to follow the same logic
Sources:
https://abdussamad.com/archives/535-Apache-MaxClients.html
https://abdussamad.com/archives/169-Apache-optimization:-Keepalive-On-or-Off.html
https://serverfault.com/a/28311
https://serverfault.com/a/713098
http://httpd.apache.org/docs/2.4/mod/mpm_common.html#maxconnectionsperchild
You’ve already got the backend done ?
– Alex
Yes, backend already implemented, I want to see if I can optimize with Keep Alive now.
– airton