Joomla! Otimizando performance

4,002
-1

Published on

Palestra que mostra nosso case com o portal do MEC. Os trabalhos e soluções para fazer um portal em joomla para milhões de acessos.

Published in: Business, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
4,002
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
77
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Joomla! Otimizando performance

  1. 1. Joomla! Maximizando performance. (Viagra para Joomla!)
  2. 2. Apresentação Marcio Mota Gerente de Desenvolvimento @mamura Júlio Pontes Pesq. Novas Tecnologias NOIX @juliopontes
  3. 3. Joomla / Wordpress / Drupal <ul><li>Renomados
  4. 4. Forte comunidade
  5. 5. Confiáveis
  6. 6. Inúmeros cases de sucesso
  7. 7. Estruturas diferenciadas </li></ul>
  8. 8. E para milhões de acessos? <ul><li>JOOMLA TUNING
  9. 9. JOOMLA EXTREME
  10. 10. FABULOSA FORMULA?
  11. 11. Muitas dúvidas??? </li></ul>
  12. 12. E o gestor? O que pensa? <ul><li>O Joomla aguenta?
  13. 13. Qual a Máquina?
  14. 14. ram? disco? cluster? processador? banda?
  15. 15. Quantos motherfuckers quadriprocessados? Sbrubles? ativação retro-escatrombólica do xurupisco reverso? </li></ul><ul><li>Seus problemas ACABARAM!!!! </li></ul>
  16. 16. Estavam esperando a resposta né? <ul><li>Depende de uma série de fatores
  17. 17. Mas independente disso descobrimos falhas
  18. 18. E deram uma dorzinha de cabeça que os senhores não precisam passar </li></ul>
  19. 19. Performance, tuning, otimização
  20. 20. O trabalho começa na garagem <ul><li>Servidor de aplicação
  21. 21. Servidor de banco de dados
  22. 22. Caixa de ferramenta organizada </li></ul>
  23. 23. PHP (php.ini) <ul><li>max_execution_time = 60
  24. 24. short_open_tags = On
  25. 25. register_globals = Off
  26. 26. allow_url_include = Off
  27. 27. allow_url_fopen = Off </li></ul><ul><li>Max_input_time=60
  28. 28. memory_limit=512M
  29. 29. file_uploads=On
  30. 30. upload_max_filesize=400M
  31. 31. post_max_site=25M </li></ul>http://noix.blog.br
  32. 32. MySQL <ul><li>Variável “wait_time_out” como valor igual a “20” no arquivo my.cnf do Mysql.
  33. 33. No arquivo de configuração mysql.all a variável allow_ persist = Off se estiver ON, não deixa o mysql_close() fechar a conexão. </li></ul>
  34. 34. Bomba combustível/sist. de injeção <ul><li>Mysql não é unanimidade
  35. 35. bloqueio de tabelas
  36. 36. Entendendo – http://noix.blog.br </li></ul>
  37. 37. Álcool ou Gasolina? <ul><li>MyIsam – Consultas
  38. 38. Innodb – Insert Updates
  39. 39. Por quê? </li></ul>
  40. 40. 2 tanques de combustível http://dev.mysql.com/doc/refman/5.0/en/replication-configuration.html
  41. 41. Como usar 2 tanques? <ul><li>Modificando o com_config para configurar 2 bancos.
  42. 42. Verificação do método Query().
  43. 43. Apontar consultas para o banco correto. </li></ul>
  44. 44. Cache e Session
  45. 45. Motor de trator? ou de formula 1? <ul><li>TRATORMULA 1 </li></ul>
  46. 46. <ul>Banners </ul><ul><li>components/com_banners/banners.php linha 108 a 116
  47. 47. $query = 'UPDATE #__banner'
  48. 48. . ' SET impmade = impmade + 1'
  49. 49. . ($expire ? ', showBanner=0' : '')
  50. 50. . ' WHERE bid = '.(int) $item->bid
  51. 51. ;
  52. 52. $db->setQuery( $query );
  53. 53. if(!$db->query()) {
  54. 54. JError::raiseError( 500, $db->stderror());
  55. 55. } </li></ul>
  56. 56. <ul>Sessions </ul>
  57. 57. <ul>Query de busca </ul><ul><li>FULLTEXT
  58. 58. Highlight </li></ul>
  59. 59. <ul>Extensões s. suporte a cache </ul><ul>Isso é coisa do capeta! </ul>
  60. 60. <ul>Ordering de com_content </ul><ul><li>Toda vez que um conteúdo é salvo
  61. 61. Despublicado
  62. 62. Selecionado para &quot;frontpage&quot; </li></ul>
  63. 63. Lanternagem e Pintura <ul><li>Tabelas X Tableless
  64. 64. Reutilização de classes
  65. 65. Código CSS em uma linha só
  66. 66. CSS Sprite
  67. 67. Utilizar corretamente as extensões de imagem
  68. 68. Framework Javascript - Escolha 1 </li></ul>
  69. 69. CSS Sprite <ul><li>Utilizar uma única imagem para a composição de todas as peças do website. </li></ul>
  70. 70. <ul>Código CSS em uma linha só </ul><ul><li>Linha única
  71. 71. .super_destaque ul.caixa li a{ width: 753px; height: 190px; position: relative; display: block; overflow: hidden } </li></ul><ul><li>Código edentado
  72. 72. #mbOverlay {
  73. 73. position: absolute;
  74. 74. left: 0;
  75. 75. width:100%;
  76. 76. background-color: #000; /* set the Milkbox overlay color // opacity: see the js options */
  77. 77. z-index:100;
  78. 78. cursor: pointer;
  79. 79. }
  80. 80. Diminuição de até 40% no tamanho do arquivo CSS a ser carregado. (retirar comentários) </li></ul>
  81. 81. Pilotos <ul><li>Resize PHP – Perca de qualidade
  82. 82. Faça resize uma única vez
  83. 83. Upload de objetos em Flash
  84. 84. Cuidado com Invenção de moda! </li></ul>
  85. 85. Colaboração <ul><li>Rafael Berlanda – Design e Programador - MEC
  86. 86. @berlanda
  87. 87. Diego Maia – Design - NOIX
  88. 88. @diegomaia
  89. 89. Arteccom – Apoio
  90. 90. Equipe NOIX </li></ul>
  91. 91. NOIX <ul>Temos vagas [email_address] </ul>
  92. 92. Contatos <ul><li>Marcio Mota - [email_address]
  93. 93. @mamura
  94. 94. Julio Ponte - [email_address]
  95. 95. @juliopontes
  96. 96. Noix Internet - [email_address]
  97. 97. @noixinternet </li></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×