O que é um bom recurso para aprender sobre escalar aplicativos PHP?

4

Eu conheço o PHP razoavelmente bem. Mas um aspecto do PHP no qual estou razoavelmente verde é o cache, o balanceamento de carga, etc.

Muitas empresas que contratam desenvolvedores de PHP estão procurando por esse background de alto uso, que eu nunca desenvolvi uma infra-estrutura corporativa com PHP.

Isso parece mais com coisas do tipo sys-admin, então fico um pouco confuso quando as empresas estão sempre pedindo por essa experiência. De qualquer forma, acho que é melhor aprender.

Onde é um bom lugar para começar a aprender tudo isso?

    
por qodeninja 29.09.2009 / 04:44

3 respostas

2

Eu posso recomendar Construindo sites escaláveis , que foi escrito por um dos caras do Flickr. A Arte do Planejamento da Capacidade , também de corporações do Flickr, também é útil como leitura adicional. Ambos lidam com o lado do servidor.

Sites de alto desempenho e Sites ainda mais rápidos são extraídos das práticas recomendadas do Yahoo para saber como fazer com que o seu site funcione mais rápido do ponto de vista do usuário. Eles lidam mais com a maneira de colocar a página na frente do usuário mais rápido, em vez de como agilizar a página com mais rapidez. Coisas como colocar o javascript na parte inferior da página para que o navegador não bloqueie. Eles também falam sobre fazer menos solicitações aos servidores, por meio de coisas como cache amigável e usar uma única imagem para todos os seus ícones e usar o css para exibir apenas uma pequena parte daquela imagem grande no lugar certo.

Há um pouco de sobreposição entre eles, mas eu li os três primeiros e os recomendo altamente.

Quanto ao PHP, parece que a única maneira de torná-lo rápido é armazenar em cache antecipadamente e armazenar em cache frequentemente. Em particular, observe o memcache e o APC. Outra coisa a considerar é que, em algum momento, o manipulador de sessão padrão bloqueia o arquivo de sessão no disco até que a solicitação seja concluída, o que significa que todas as solicitações que usam uma sessão bloqueariam. Implemente seu próprio manipulador de sessão, mas não use um banco de dados para isso.

Você pode encontrar esta entrevista interessante .

    
por 29.09.2009 / 11:35
3

Não posso dar a você lugares específicos para começar, mas mantenho o link no meu feed RSS, pois eles sempre têm artigos muito interessantes, abrangendo tudo, desde a teoria até casos do mundo real com ambientes muito grandes (por exemplo, Flickr, Squarespace, Youtube)

    
por 29.09.2009 / 09:11
1

Se você precisar de velocidade bruta nas funções principais do seu PHP, você pode criar seus próprios módulos. Alguns lugares que você pode ler sobre isso são:

Eu realmente não o recomendaria, a menos que você precise, mas pode dar um desempenho extra se você precisar disso em alguns casos.

    
por 19.11.2009 / 23:23