Aumentando o performance do user simultâneo no aplicativo LAMP

Temos um aplicativo LAMP onde começamos a sentir a pitada de performance devido ao grande número de users simultâneos que se conectam ao aplicativo. Eu examinei os pairâmetros individuais do Apache e do MySql, onde precisamos configurá-los paira um melhor performance com grande número de users e não acho que isso esteja causando novas melhorias. Gostairia de saber se existem outras estratégias que podemos observair paira aumentair o número de users simultâneos que podem usair nosso aplicativo LAMP baseado na Web e sem view uma degradação no performance. É possível adicionair mais serveres apache ou mais serveres mysql e balanceá-los?

Provavelmente, o primeiro maior sucesso no performance de um aplicativo habilitado paira DB é o performance da consulta. Você executou qualquer análise de consulta no seu app / DB paira view onde o tempo de consulta é gasto?

Depois de otimizair o performance da consulta, existem outras estratégias de otimização paira o seu primeiro database, antes de considerair distribuir seu database paira uma architecture de múltiplos nós de alto performance. Você pode view coisas como: – Chaves e índices (relacionados ao performance da consulta, mas também importantes paira otimização de tabela) – Dimensionamento de database e pairticionamento de disco (incluindo tamanho de dados) – Mecanismos de airmazenamento (Qual viewsão do mecanismo LAMP / MySQL? MyISAM foi padrão paira MySQL antes de 5.5.5) – Tampão / cache tuning

Você pode obter mais informações paira serveres FOSS, incluindo instalações LAMP e MySQL, no FOSS Serview Project, http://www.viewiserview.net/a/fossmain.htm . Existe um link paira um fórum de tecnologia neste endereço, que fornece aos administradores do server a assistência FOSS.

Mesmo que as pessoas estejam prevenindo a resposta às suas perguntas por causa da sua baixa taxa de aceitação, eu sou um pouco novo aqui, então não tenho certeza do que isso significa. Até descobrir, aqui estão algumas opções.

A primeira coisa que você precisa fazer é descobrir onde exatamente é o embotellamento do aplicativo. Comece executando sua cópia de desenvolvimento do aplicativo com o perqueuedor do xDebug . Isso lhe dairá uma visão geral de execução muito precisa.

Se você é azairado e seus problemas apairecem somente na produção (sob cairga), sugiro experimentair o xhprof do Facebook, que faz aproximadamente o mesmo que o xDebug, mas é mais leve.

Na maioria das vezes, o problema com aplicativos lentos é o database. À medida que você está usando o MySQL, sugiro que ele gire sua consulta lenta e deixe-o funcionair por 24-48h. Isso vai atrasair o seu aplicativo ainda mais, mas valerá a pena se você descobrir o problema.

Depois de algum tempo, você usa o percâmbio de informações da Percona Toolkit (ex-Maatkit) paira analisair o log lento. Pode (e provavelmente) mostrair uma consulta ou duas que você pode consertair e aumentair sua performance.

No final, você pode acabair por não precisair de novo hairdwaire.