joomla! otimizando performance
DESCRIPTION
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.TRANSCRIPT
Joomla! Maximizando performance.
(Viagra para Joomla!)
Apresentação
Marcio MotaGerente de Desenvolvimento
@mamura
Júlio PontesPesq. Novas Tecnologias
NOIX@juliopontes
Joomla / Wordpress / Drupal
Renomados
Forte comunidade
Confiáveis
Inúmeros cases de sucesso
Estruturas diferenciadas
E para milhões de acessos?
JOOMLA TUNING
JOOMLA EXTREME
FABULOSA FORMULA?
Muitas dúvidas???
E o gestor? O que pensa?
O Joomla aguenta?
Qual a Máquina?
ram? disco? cluster? processador? banda?
Quantos motherfuckers quadriprocessados? Sbrubles? ativação retroescatrombólica do xurupisco reverso?
Seus problemas ACABARAM!!!!
Estavam esperando a resposta né?
Depende de uma série de fatores
Mas independente disso descobrimos falhas
E deram uma dorzinha de cabeça que os senhores não precisam passar
Performance, tuning, otimização
O trabalho começa na garagem
Servidor de aplicação
Servidor de banco de dados
Caixa de ferramenta organizada
PHP (php.ini)
max_execution_time = 60
short_open_tags = On
register_globals = Off
allow_url_include = Off
allow_url_fopen = Off
Max_input_time=60
memory_limit=512M
file_uploads=On
upload_max_filesize=400M
post_max_site=25M
http://noix.blog.br
MySQL
Variável “wait_time_out” como valor igual a “20” no arquivo my.cnf do Mysql.
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.
Bomba combustível/sist. de injeção
Mysql não é unanimidade
bloqueio de tabelas
Entendendo – http://noix.blog.br
Álcool ou Gasolina?
MyIsam – Consultas
Innodb – Insert Updates
Por quê?
2 tanques de combustível
http://dev.mysql.com/doc/refman/5.0/en/replicationconfiguration.html
Como usar 2 tanques?
Modificando o com_config para configurar 2 bancos.
Verificação do método Query().
Apontar consultas para o banco correto.
Cache e Session
Motor de trator? ou de formula 1?
TRATORMULA 1
Banners
components/com_banners/banners.php linha 108 a 116
$query = 'UPDATE #__banner'
. ' SET impmade = impmade + 1'
Sessions
Query de busca
FULLTEXT
Highlight
Extensões s. suporte a cache
Isso é coisa do capeta!
Ordering de com_content
Toda vez que um conteúdo é salvo
Despublicado
Selecionado para "frontpage"
Lanternagem e Pintura
Tabelas X Tableless
Reutilização de classes
Código CSS em uma linha só
CSS Sprite
Utilizar corretamente as extensões de imagem
Framework Javascript Escolha 1
CSS Sprite
Utilizar uma única imagem para a composição de todas as peças do website.
Código CSS em uma linha só
Linha única
.super_destaque ul.caixa li a{ width: 753px; height: 190px; position: relative; display: block; overflow: hidden }
Código edentado
#mbOverlay {
position: absolute;
left: 0;
width:100%;
backgroundcolor: #000; /* set the Milkbox
Pilotos
Resize PHP – Perca de qualidade
Faça resize uma única vez
Upload de objetos em Flash
Cuidado com Invenção de moda!
Colaboração
Rafael Berlanda – Design e Programador MEC
@berlanda
Diego Maia – Design NOIX
@diegomaia
Arteccom – Apoio
Equipe NOIX
Contatos
Marcio Mota [email protected]
@mamura
Julio Ponte [email protected]
@juliopontes
Noix Internet [email protected]
@noixinternet