Upload
celso-fernandes
View
856
Download
3
Tags:
Embed Size (px)
Citation preview
Reduzindo Tempo de Resposta do Servidor
#wordcampbh 2014
Zertico
Celso Fernandes
fernandes
celsovjf
Cloud Computing
Cloud Computing
Cloud Computing
Cloud Computing
Cloud Computing
Cloud Computing
Cloud Computing
Cloud Computing
Cloud Computing
Cloud Computing
Maratona Mineira!de Programação
1. Requisições Web
2. Nginx vs PHP FPM
3. Cache
4. Conheça seus inimigos (e amigos!)
5. Ferramentas
6. Case
7. Finalizando
Agenda
Desenvolvedor Operações
DevOps DevOps
Conceitos básicos de HTTP Nada de RFC
Apresentação Servidores Web Configuração Servidores
Interface Web Linha de Comando
WordPress Outras Plataformas
Ganho de Performance -
O que vai ter, o que não vai
Desenvolvedor Operações
DevOps DevOps
Conceitos básicos de HTTP Nada de RFC
Apresentação Servidores Web Configuração Servidores
Interface Web Linha de Comando
WordPress Outras Plataformas
Ganho de Performance -
O que vai ter, o que não vai
Desenvolvedor Operações
DevOps DevOps
Conceitos básicos de HTTP Nada de RFC
Apresentação Servidores Web Configuração Servidores
Interface Web Linha de Comando
WordPress Outras Plataformas
Ganho de Performance -
O que vai ter, o que não vai
Desenvolvedor Operações
DevOps DevOps
Conceitos básicos de HTTP Nada de RFC
Apresentação Servidores Web Configuração Servidores
Interface Web Linha de Comando
WordPress Outras Plataformas
Ganho de Performance -
O que vai ter, o que não vai
Desenvolvedor Operações
DevOps DevOps
Conceitos básicos de HTTP Nada de RFC
Apresentação Servidores Web Configuração Servidores
Interface Web Linha de Comando
WordPress Outras Plataformas
Ganho de Performance -
O que vai ter, o que não vai
Desenvolvedor Operações
DevOps DevOps
Conceitos básicos de HTTP Nada de RFC
Apresentação Servidores Web Configuração Servidores
Interface Web Linha de Comando
WordPress Outras Plataformas
Ganho de Performance -
O que vai ter, o que não vai
Desenvolvedor Operações
DevOps DevOps
Conceitos básicos de HTTP Nada de RFC
Apresentação Servidores Web Configuração Servidores
Interface Web Linha de Comando
WordPress Outras Plataformas
Ganho de Performance -
O que vai ter, o que não vai
Desenvolvedor Operações
DevOps DevOps
Conceitos básicos de HTTP Nada de RFC
Apresentação Servidores Web Configuração Servidores
Interface Web Linha de Comando
WordPress Outras Plataformas
Ganho de Performance -
O que vai ter, o que não vai
Requisições Web
WordPress Cloud
Aplicações
Virtualização
Servidor Servidor Servidor
Servidor de Aplicação
Requisição WordPress
1. www.zertico.com
2. Chrome: Qual IP do zertico.com? DNS: IP é 192.168.0.1
3. Chrome: Olá 192.168.0.1 quero ver www.zertico.com
4. Nginx: Quero o HTML
6. PHP: Quero dados!
Edição Nginx
5. index.php
7. banco
Requisição WordPress
1. www.zertico.com 2. Me da a imagem logo.png
Edição Nginx
3. /path/to/logo.png
Requisição WordPress
1. www.zertico.com
2. Chrome: Qual IP do zertico.com? DNS: IP é 192.168.0.1
3. Chrome: Olá 192.168.0.1 quero ver www.zertico.com
4. Apache+mod_php: Quero dados!
Edição Apache
5. index.php
6. banco
Requisição WordPress
1. www.zertico.com 2. Me da a imagem logo.png
Edição Apache
3. /path/to/logo.png
Imagina quanto arquivos .php são lidos/processados
Quantas chamadas ao banco de dados são executadas
Quantos arquivos de imagem, css e JS são lidos do disco
Quantas requisições HTTP são executadas
Chamadas via API, são novas requisições
Quantos ciclos de CPU foram utilizados
Quantos segundos seus clientes ficaram esperando
Requisições
Imagina quanto arquivos .php são lidos/processados
Quantas chamadas ao banco de dados são executadas
Quantos arquivos de imagem, css e JS são lidos do disco
Quantas requisições HTTP são executadas
Chamadas via API, são novas requisições
Quantos ciclos de CPU foram utilizados
Quantos segundos seus clientes ficaram esperando
Requisições
Imagina quanto arquivos .php são lidos/processados
Quantas chamadas ao banco de dados são executadas
Quantos arquivos de imagem, css e JS são lidos do disco
Quantas requisições HTTP são executadas
Chamadas via API, são novas requisições
Quantos ciclos de CPU foram utilizados
Quantos segundos seus clientes ficaram esperando
Requisições
Imagina quanto arquivos .php são lidos/processados
Quantas chamadas ao banco de dados são executadas
Quantos arquivos de imagem, css e JS são lidos do disco
Quantas requisições HTTP são executadas
Chamadas via API, são novas requisições
Quantos ciclos de CPU foram utilizados
Quantos segundos seus clientes ficaram esperando
Requisições
Imagina quanto arquivos .php são lidos/processados
Quantas chamadas ao banco de dados são executadas
Quantos arquivos de imagem, css e JS são lidos do disco
Quantas requisições HTTP são executadas
Chamadas via API, são novas requisições
Quantos ciclos de CPU foram utilizados
Quantos segundos seus clientes ficaram esperando
Requisições
Imagina quanto arquivos .php são lidos/processados
Quantas chamadas ao banco de dados são executadas
Quantos arquivos de imagem, css e JS são lidos do disco
Quantas requisições HTTP são executadas
Chamadas via API, são novas requisições
Quantos ciclos de CPU foram utilizados
Quantos segundos seus clientes ficaram esperando
Requisições
Imagina quanto arquivos .php são lidos/processados
Quantas chamadas ao banco de dados são executadas
Quantos arquivos de imagem, css e JS são lidos do disco
Quantas requisições HTTP são executadas
Chamadas via API, são novas requisições
Quantos ciclos de CPU foram utilizados
Quantos segundos seus clientes ficaram esperando
Requisições
Requisição WordPressNginx vs Apache
Requisição WordPressNginx vs Apache
Requisição WordPressNginx vs Apache
Requisição WordPressNginx vs Apache
Requisição WordPressNginx vs Apache
Filas!! :/
Cache
Requisição WordPress
1. www.zertico.com
2. Chrome: Qual IP do zertico.com? DNS: IP é 192.168.0.1
3. Chrome: Olá 192.168.0.1 quero ver www.zertico.com
5. Quero o HTML
7. PHP: Quero dados!
Varnish Miss
6. index.php
8. banco
4. Quero o HTML
Requisição WordPress
1. www.zertico.com
2. Chrome: Qual IP do zertico.com? DNS: IP é 192.168.0.1
3. Chrome: Olá 192.168.0.1 quero ver www.zertico.com
Varnish Hit
4. Varnish
Requisição WordPressNginx vs Apache + Cache
Requisição WordPressNginx vs Apache + Cache
Requisição WordPressNginx vs Apache + Cache
Requisição WordPressNginx vs Apache + Cache
Resposta Rápida
Consome Ram
RAM é mais rápida que disco
Ajuda Economizar Ram do Servidor App
Ajuda na performance, mas não resolve problemas
Páginas não são atualizadas instatâneamente
Gerenciamento de cache FTW!
Cache
-
It’s time!!!
Botões Twitter e Facebook melhor usar link a JS
Requisições 404 realizam requisições desnecessárias
Apache deve ser evitado quando se tem opções melhores
WP_DEBUG não deve ser ativado em produção (CPU)
WP_CRON deve ser evitado, cron do Linux
Logs são escrita em disco (lento), devem ser evitados
Plugins se não tomar cuidado…
Problemas
Mude uma variável
GZip
Assets Minify
CSS Sprites
Banco de Dados
Banco de Dados
Content Delivery Network
( ) Compatível com minha versão?
( ) Última atualização recente?
( ) Muitos downloads? (critério duvidoso)
( ) Boas avaliações?
( ) Desenvolvedor conhecido?
( ) Tutorial explicando funcionamento, particularidades, …?
( ) Testei muito bem antes de colocar em produção?
Plugins Checklist
Ferramentas
Developer Tools
Page Speed Insights
Pingdom
GTMetrix
Apache Benchmark
Abrindo a Caixa Preta
Ambiente de Homologação
Um gato morre!
Em Produção
Agente ZerticoCloud ComputingPrazer,
Sou seu Agente de Cloud
http://agente.zertico.com/
1. Escolha seu Cloud Server
2. Escolha sua Aplicação
3. Aproveite :)
Como Funciona
1. Escolha seu Cloud Server
2. Escolha sua Aplicação
3. Aproveite :)
Como Funciona
Análise
zertico
Faça a Web Mais Rápida