Dicas para aumentar a performance de
          um software PHP

     Almir Neto – almirneto@gmail.com

                1º ...
Dicas para aumentar a performance de
          um software PHP

Grupo de Desenvolvedores PHP de Goiás

    Lista de Discus...
Dicas para aumentar a performance de um software PHP




1 - Sempre declare métodos
      como estáticos

   O fator de ot...
Dicas para aumentar a performance de um software PHP




2 - echo é mais rápido que print

 http://www.faqts.com/knowledge...
Dicas para aumentar a performance de um software PHP




3 – Utilize echo com vários
parâmetros. Não concatene
           ...
Dicas para aumentar a performance de um software PHP




4 – Defina o valor máximo de um
 laço de repetição FOR antes de
 ...
Dicas para aumentar a performance de um software PHP



5 – utilize o método unset() em
 variáveis que não serão mais
 uti...
Dicas para aumentar a performance de um software PHP




 6 – Tente não usar métodos
magicos, como: __get, __set,
        ...
Dicas para aumentar a performance de um software PHP




7 – include() é mais rápido que
           require().
 Além disso...
Dicas para aumentar a performance de um software PHP




8 - Use caminhos completos em
       includes e requires

 O PHP ...
Dicas para aumentar a performance de um software PHP




9 – str_replace é mais rápido
que preg_replace, mas strtr é
  ain...
Dicas para aumentar a performance de um software PHP




10 – É melhor usar switch/case
  do que multiplos if’s e else.


...
Dicas para aumentar a performance de um software PHP



11 - Usar supressão de erros
com @ na frente da função é
        m...
Dicas para aumentar a performance de um software PHP




12 – Ative o mod_deflate do
          apache.
O mod_deflate compa...
Dicas para aumentar a performance de um software PHP




13 – Feche as conexões com o
 banco de dados após finalizar
     ...
Dicas para aumentar a performance de um software PHP




14 – $row[’id’] é 7x mais rapido
         que $row[id]
 Ao coloca...
Dicas para aumentar a performance de um software PHP




15 – Mensagens de erro deixam
      a aplicação lenta.



       ...
Dicas para aumentar a performance de um software PHP




16 – Não use funcões dentro de
            loops
            for ...
Dicas para aumentar a performance de um software PHP




17 – Incrementar uma variável
 local é mais rápido que uma
      ...
Dicas para aumentar a performance de um software PHP




18 – Incrementar uma variável
global é 2x mais lento que em
     ...
Dicas para aumentar a performance de um software PHP




 19 – Incrementar um atributo
( $this->var++) é 3x mais lento
   ...
Dicas para aumentar a performance de um software PHP




 20 – Incrementar uma variável
local não definida é de 9x a 10x
 ...
Dicas para aumentar a performance de um software PHP



  21 – Declarar uma variável
  global sem usá-la em uma
função dei...
Dicas para aumentar a performance de um software PHP




22 – Métodos de classes filhas
são mais rápidos que métodos
     ...
Dicas para aumentar a performance de um software PHP



 23 – Quando for utilizar uma
  string sem variáveis, prefira
 asp...
Dicas para aumentar a performance de um software PHP




 24 – Procure utilizar somente
   HTML quando possível.

Dessa ma...
Dicas para aumentar a performance de um software PHP




  25 – Utilize uma solução de
             cache.

  Os scripts P...
Dicas para aumentar a performance de um software PHP



 26 – Prefira utilizar isset() ao
invés de strlen() para checar o
...
Dicas para aumentar a performance de um software PHP



 27 – Ao incrementar um valor,
prefira ++$i do que $i++ quando
   ...
Dicas para aumentar a performance de um software PHP




28 – Nem tudo precisa ser POO.


Sistemas POO são geralmente mais...
Dicas para aumentar a performance de um software PHP




 29 – Arrays são mais rápidos
         que classes.

Sempre que p...
Dicas para aumentar a performance de um software PHP




   30 – Não divida muito os
métodos. Menor quantidade de
métodos ...
Dicas para aumentar a performance de um software PHP




31 - Escreva suas funções em C

O PHP permite a escrita de funçõe...
Dicas para aumentar a performance de um software PHP




32 – Utilize o módulo mod_gzip
           do Apache

 Com esse mó...
Dicas para aumentar a performance de um software PHP




 33 – Configure o Apache de
acordo com suas necessidades

      O...
Dicas para aumentar a performance de um software PHP




34 – Configure o IIS de acordo
   com suas necessidades

O IIS ta...
Dicas para aumentar a performance de um software PHP




   35 – Utilize o servidor de
     otimização da Zend

Com o Zend...
Dicas para aumentar a performance de um software PHP



36 – Utilize as funcões de Output
              Buffer
   Imprimir...
Dicas para aumentar a performance de um software PHP



37 – Utilize um sistema de Profile
  para medir o tempo de cada
  ...
Dicas para aumentar a performance de um software PHP




              38 – Use Linux!!

     Testes utilizando Linux/Apac...
Dicas para aumentar a performance de um software PHP


     Bibliografia / Agradecimentos
• Artigo em Inglês:
  - Reinhold...
Dicas para aumentar a performance de um software PHP




             Fim



                 Almir Neto
           almirn...
Próximos SlideShares
Carregando em…5
×

[deprecated]Dicas para aumentar a performance de um software PHP

2.350 visualizações

Publicada em

Slides used at 1º /dev/net.
The slides shows tips on how to improve PHP software performance.

Publicada em: Tecnologia
2 comentários
3 gostaram
Estatísticas
Notas
  • Muito legal esse post hein, parabéns.
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
  • Salve,
    Muito bom o slide, parabéns. Usarei as dicas para o meu Manual de Padronizalçao de Codificação - PHP Coding Standards. Valeu!
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
Sem downloads
Visualizações
Visualizações totais
2.350
No SlideShare
0
A partir de incorporações
0
Número de incorporações
10
Ações
Compartilhamentos
0
Downloads
76
Comentários
2
Gostaram
3
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

[deprecated]Dicas para aumentar a performance de um software PHP

  1. 1. Dicas para aumentar a performance de um software PHP Almir Neto – almirneto@gmail.com 1º dev/net http://www.aslgo.org.br/dev/net Goiânia, 08 de Novembro de 2008
  2. 2. Dicas para aumentar a performance de um software PHP Grupo de Desenvolvedores PHP de Goiás Lista de Discussão ● Troca de Conhecimentos ● Encontros ● Palestras ● Eventos ● http://www.php.org.br ● http://www.gophp.com.br ●
  3. 3. Dicas para aumentar a performance de um software PHP 1 - Sempre declare métodos como estáticos O fator de otimização é de 4x Almir Neto almirneto@gmail.com
  4. 4. Dicas para aumentar a performance de um software PHP 2 - echo é mais rápido que print http://www.faqts.com/knowledge_base/vie w.phtml/aid/1/fid/40 Almir Neto almirneto@gmail.com
  5. 5. Dicas para aumentar a performance de um software PHP 3 – Utilize echo com vários parâmetros. Não concatene strings. echo(“Moro em ”, $cidade, “/”, $uf); Almir Neto almirneto@gmail.com
  6. 6. Dicas para aumentar a performance de um software PHP 4 – Defina o valor máximo de um laço de repetição FOR antes de sua definição //Não usar for($i=0; $i < count($array); $i++) //Use $max_for = count($array); for($i=0; $i < $max_for; $i++) Almir Neto almirneto@gmail.com
  7. 7. Dicas para aumentar a performance de um software PHP 5 – utilize o método unset() em variáveis que não serão mais utilizadas, principalmente em arrays. O método unset() libera a variável da memória, fazendo com que o PHP tenha mais memória para trabalhar Almir Neto almirneto@gmail.com
  8. 8. Dicas para aumentar a performance de um software PHP 6 – Tente não usar métodos magicos, como: __get, __set, __autoload Almir Neto almirneto@gmail.com
  9. 9. Dicas para aumentar a performance de um software PHP 7 – include() é mais rápido que require(). Além disso não utilize include_once() ou require_once(), já que o PHP faz uma série de verificações ao utilizar esses métodos. Almir Neto almirneto@gmail.com
  10. 10. Dicas para aumentar a performance de um software PHP 8 - Use caminhos completos em includes e requires O PHP gasta menos tempo resolvendo os caminhos. Almir Neto almirneto@gmail.com
  11. 11. Dicas para aumentar a performance de um software PHP 9 – str_replace é mais rápido que preg_replace, mas strtr é ainda 4x mais rápido que str_replace. Almir Neto almirneto@gmail.com
  12. 12. Dicas para aumentar a performance de um software PHP 10 – É melhor usar switch/case do que multiplos if’s e else. Almir Neto almirneto@gmail.com
  13. 13. Dicas para aumentar a performance de um software PHP 11 - Usar supressão de erros com @ na frente da função é muito lento. Erros podem ser suprimidos na configuração do PHP ou com funções específicas para essa finalidade como display_errors(). Almir Neto almirneto@gmail.com
  14. 14. Dicas para aumentar a performance de um software PHP 12 – Ative o mod_deflate do apache. O mod_deflate compacta os arquivos que serão enviados para o navegador do cliente, tornando a resposta mais rápida. Almir Neto almirneto@gmail.com
  15. 15. Dicas para aumentar a performance de um software PHP 13 – Feche as conexões com o banco de dados após finalizar sua utilização Almir Neto almirneto@gmail.com
  16. 16. Dicas para aumentar a performance de um software PHP 14 – $row[’id’] é 7x mais rapido que $row[id] Ao colocar o id entre aspas, o PHP sabe que se trata de uma string e não precisa fazer conversões. Almir Neto almirneto@gmail.com
  17. 17. Dicas para aumentar a performance de um software PHP 15 – Mensagens de erro deixam a aplicação lenta. Almir Neto almirneto@gmail.com
  18. 18. Dicas para aumentar a performance de um software PHP 16 – Não use funcões dentro de loops for ($x=0; $x < count($array); $x) A função count() é chamada em cada iteração. Almir Neto almirneto@gmail.com
  19. 19. Dicas para aumentar a performance de um software PHP 17 – Incrementar uma variável local é mais rápido que uma global Almir Neto almirneto@gmail.com
  20. 20. Dicas para aumentar a performance de um software PHP 18 – Incrementar uma variável global é 2x mais lento que em uma variável local. Almir Neto almirneto@gmail.com
  21. 21. Dicas para aumentar a performance de um software PHP 19 – Incrementar um atributo ( $this->var++) é 3x mais lento que uma variável local. Almir Neto almirneto@gmail.com
  22. 22. Dicas para aumentar a performance de um software PHP 20 – Incrementar uma variável local não definida é de 9x a 10x mais lento do que uma variável local pré-inicializada. Almir Neto almirneto@gmail.com
  23. 23. Dicas para aumentar a performance de um software PHP 21 – Declarar uma variável global sem usá-la em uma função deixa a aplicação lenta. O PHP provavelmente faz um checagem para ver se existe a nível global Almir Neto almirneto@gmail.com
  24. 24. Dicas para aumentar a performance de um software PHP 22 – Métodos de classes filhas são mais rápidos que métodos da classe base. Almir Neto almirneto@gmail.com
  25. 25. Dicas para aumentar a performance de um software PHP 23 – Quando for utilizar uma string sem variáveis, prefira aspas simples ' do que aspas duplas “. Dessa maneira o PHP não precisa procurar caracteres especiais a serem interpretados. Almir Neto almirneto@gmail.com
  26. 26. Dicas para aumentar a performance de um software PHP 24 – Procure utilizar somente HTML quando possível. Dessa maneira o programa fica até 10x mais rápido pois os caracteres HTML não são interpretados pelo PHP, indo diretamente para o navegador do cliente. Almir Neto almirneto@gmail.com
  27. 27. Dicas para aumentar a performance de um software PHP 25 – Utilize uma solução de cache. Os scripts PHP são recompilados a cada requisição. Com uma solução de cache essa recompilação não é feita a todo o tempo. Almir Neto almirneto@gmail.com
  28. 28. Dicas para aumentar a performance de um software PHP 26 – Prefira utilizar isset() ao invés de strlen() para checar o tamanho de uma string. //Não usar if(srtlen($var) < 5) echo “Lento!”; //Use if (!isset($var{5})) echo quot;Mais rápido!quot;; Almir Neto almirneto@gmail.com
  29. 29. Dicas para aumentar a performance de um software PHP 27 – Ao incrementar um valor, prefira ++$i do que $i++ quando possível. Utilizar $i++ faz com que o PHP execute uma operação a mais do que ++$i; Almir Neto almirneto@gmail.com
  30. 30. Dicas para aumentar a performance de um software PHP 28 – Nem tudo precisa ser POO. Sistemas POO são geralmente mais lentos pois chamadas a métodos e objetos geram um grande consumo de memória. Almir Neto almirneto@gmail.com
  31. 31. Dicas para aumentar a performance de um software PHP 29 – Arrays são mais rápidos que classes. Sempre que possível utilize arrays ao invés de classes. Almir Neto almirneto@gmail.com
  32. 32. Dicas para aumentar a performance de um software PHP 30 – Não divida muito os métodos. Menor quantidade de métodos = menos chamadas de métodos. Almir Neto almirneto@gmail.com
  33. 33. Dicas para aumentar a performance de um software PHP 31 - Escreva suas funções em C O PHP permite a escrita de funções em C e utilizá-las como extensão do PHP. Dessa maneira a velocidade aumenta consideravelmente. Almir Neto almirneto@gmail.com
  34. 34. Dicas para aumentar a performance de um software PHP 32 – Utilize o módulo mod_gzip do Apache Com esse módulo ativo seus dados são comprimidos e a transferência de dados diminui em até 80%. Almir Neto almirneto@gmail.com
  35. 35. Dicas para aumentar a performance de um software PHP 33 – Configure o Apache de acordo com suas necessidades O Apache permite uma série de configurações que pode fazer com que seu sistema fique bem mais rápido. Almir Neto almirneto@gmail.com
  36. 36. Dicas para aumentar a performance de um software PHP 34 – Configure o IIS de acordo com suas necessidades O IIS também tem configurações que fazem com que os sistemas funcionem de maneira eficaz. Almir Neto almirneto@gmail.com
  37. 37. Dicas para aumentar a performance de um software PHP 35 – Utilize o servidor de otimização da Zend Com o Zend Optimizer seus scripts podem ser otimizados em até 50%. Almir Neto almirneto@gmail.com
  38. 38. Dicas para aumentar a performance de um software PHP 36 – Utilize as funcões de Output Buffer Imprimir informações várias vezes pode deixar um script lento. Com as funções de Output Buffer, as informações são armazenadas na memória e exibidas de uma só vez. http://php.net/manual/en/book.outcontrol.php Almir Neto almirneto@gmail.com
  39. 39. Dicas para aumentar a performance de um software PHP 37 – Utilize um sistema de Profile para medir o tempo de cada parte do código A extensão Xdebug faz bem esse trabalho. http://xdebug.org/docs/profiler Almir Neto almirneto@gmail.com
  40. 40. Dicas para aumentar a performance de um software PHP 38 – Use Linux!! Testes utilizando Linux/Apache e Windows/Apache mostram que o Linux chega a ser 7x mais rápido que o Windows para interpretar PHP. http://www.paessler.com/webstress/sample_performance_tests/co mparing_php_script_performance_on_linux_and_windows Almir Neto almirneto@gmail.com
  41. 41. Dicas para aumentar a performance de um software PHP Bibliografia / Agradecimentos • Artigo em Inglês: - Reinhold Weber http://reinholdweber.com/?p=3 • Artigo Traduzido: - Lucas Stephanou Contribuições: Pablo Sánchez http://blog.lucas-ts.com/programacao/traducao-39-dicas-de-perfomance-php/ • Dicas de otimização do servidor: http://phplens.com/lens/php-book/optimizing-debugging-php.php • Artigos da IBM sobre PHP: http://www.ibm.com/developerworks/opensource/top-projects/php.html http://www.ibm.com/developerworks/views/opensource/libraryview.jsp? search_by=make+php+apps+fast • Paessler http://www.paessler.com/webstress/sample_performance_tests/comparing_ php_script_performance_on_linux_and_windows Almir Neto almirneto@gmail.com
  42. 42. Dicas para aumentar a performance de um software PHP Fim Almir Neto almirneto@gmail.com

×