Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Hulkstar

Atualizações em tempo real

Recommended Posts

É o seguinte,tenho algumas atualizações em tempo real no meu site,mais as vezes elas não funcionam corretamente,parece que dão uma travadinha,já verifiquei o status do servidor e não está consumindo nem 50% do servidor,vocês teriam alguma ideia do que pode estar acontecendo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Normalmente, um servidor de PHP sofre mais por consumo de memória do que processador. Mas descreva melhor o que é essa "travadinha". Pode ser até uma questão de uso de sessão.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Estou usando um servidor windows server 2008 R2,mais ele parece estar lento,as atualizações que faço em tempo real para buscar informações as vezes aparece estar lento,mais o que me deixa mais intrigado com isso é que o servidor não está sendo uasado nem 50% dele para ficar lento

 

Ex:

 

As vezes o site fica lento,mais o uso do CPU está em 10%,memoria ran não está consumindo 50%,entende,pelo meu ponto de vista com o valor de usuários que tem online,não era para estar lento,era para funcionar tudo normalmente.

 

Não intendo muito bem sobre servidores,mais acho que se as aplicações estivessem pesando ou algo similar,era para o uso do servidor estar alto e o consumo da memoria também alto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quantos usuários ?

E como vc sabe q está "consumindo pouco" ? está com o NewRelic ligado ?

 

Como funciona teu sistema de real time ? se for um long polling, ou um setInterval(), pode reescrever a solução, pq essas coisas não escalam.

Compartilhar este post


Link para o post
Compartilhar em outros sites

São poucos usuários,e sei que está consumindo pouco devido ao painel que mim é disponibilizado para verificar os consumos e talzs.

 

E sobre o sistema real time estou utilizando setInterval().

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então vamos aos problemas:

 

-> Rodar php no Windows

-> Usar setInterval()

-> Não ter NewRelic

 

Fora isso, qual é a hospedagem ? Cloud ? VPS ? Daqui do Brasil ? ou lá de fora ?

Está usando o Apache como servidor ?

 

São muitas variáveis, e "quantos" são poucos ? sem números sem dados, fica difícil dimensionar uma boa solução, mas de cara, a sua infra e a estratégia de setInterval() são sim grandes problemas de performance, e vc deveria procurar algo melhor. (socket)

Compartilhar este post


Link para o post
Compartilhar em outros sites

São muitas variáveis, e "quantos" são poucos ?

 

Se você se refere a numero de usuários são poucos,em torno de 15.

 

Estou usando IIS,e é um vps internacional.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Há um detalhe que é o seguinte, o PHP permite apenas uma sessão ativa por usuário. Caso mais de uma requisição estiver sendo feita ao mesmo tempo, as requisições são colocadas em fila, e uma a uma é executada. E isso da a impressão de lentidão no sistema.

Isso é conhecido como session lock. É uma proteção para uma possível condição de corrida dentro da sessão. Similar ao lock das databases.

http://konrness.com/php5/how-to-prevent-blocking-php-requests/
http://stackoverflow.com/questions/3623484/why-does-apache-not-process-multiple-requests-from-the-same-browser-simultaneous
http://stackoverflow.com/questions/1430883/simultaneous-requests-to-php-script

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.