Boas notícias sobre ‘performance’
Segunda-feira, 15 de Setembro de 2008
Aqui há uns dias tive uns problemas graves com o meu serviço de alojamento (DreamHost). Felizmente está tudo resolvido e o problema estava relacionado com um script que estava a tentar optimizar uma tabela na base de dados com cerca de 300MB. Entrou em loop e nunca mais parou, mandando o servidor abaixo e consumindo toda a RAM existente (e a não existente também). Como consequência disso, o Portal das Curiosidades (o site que contém a tal tabela) ficou em baixo durante 2 dias e os quase 21.000 utilizadores ficaram privados do seu espaço preferido na Internet
Cheguei mesmo a pensar que tinha sido o fim do Portal das Curiosidades, isto no dia exacto em que fazia 9 anos de vida (9/9/99 – 9/9/08).
Depois do problema resolvido, dos 3 sites que tenho no servidor (VPS), apenas um, o MyTVShows, continuava extremamente lento a carregar as páginas e a gastar alguma RAM a mais comparado com os outros dois sites muito mais pesados e com muito mais visitantes (este blog e o Portal das Curiosidades).
Depois de andar a olhar para o código e de andar a tentar optimizar as ligações à base de dados, dei de caras com um artigo sobre o uso de INDEXES nas tabelas da base de dados MySQL. Segundo esse artigo, numa tabela com 1000 registos, o uso de um INDEX melhoraria o desempenho da mesma em cerca de 100 vezes. Desconfiei e fui ler o artigo sobre INDEXES no manual de MySQL e decidi tentar.
Cinco minutos depois, o My TV Shows estava a debitar páginas com uma velocidade como se não houvesse amanhã
Passou de cerca de 4 ou 5 segundos para 0,07 segundos o tempo que demora a carregar a página inicial. Todas as outras operações ficaram também notavelmente mais rápidas.
Nota: para que saibam, a primeira vez que programei alguma coisa foi o My TV Shows, por isso é natural que não soubesse estes pequenos (grandes) pormenores. Vou aprendendo à medida que vou avançando.
Por isso, se tiverem mais alguma sugestão que deve ser feita e que eu não saiba, estou disponível para aprender
Ivo Gomes tem 30 anos e é licenciado em