como aumentar a performance do seu site ou blog sem muito esforço

Post on 05-Dec-2014

742 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Como fazer seu site/blog voar baixo sem muito esforço . . .

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Apresentação

● Vamos falar de . . .● Cache . . . ● Objetivos . . .

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

# whoami

● Bruno Gurgel (@bggo);● Entusiasta;● Colaborador;● Tímido contribuinte;● Experiência;● Certificações;

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Introdução

● O site/blog– Caiu …. ?

– Ta fora … ?

– Ta lento … ?

● Não estou conseguindo entrar;

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Introdução

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Introdução

● Respirem isso não é raro! . . .

É comum!!!

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Analisando o problema

● O que dizem os dados?– De onde tirar dados . .

● Logs;● Analitycs;● Pwiki;

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Analisando o problema

● Analisando o problema– Com os dados compilados:

● Podemos “Tunnar”?● Onde está o gargalo?● É necessário expandir?● Qual é o tamanho das minhas páginas?● Estou usando compactação para

entregar?

● O que poderia fazer que eu não estou fazendo . . .

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Olhando a arquitetura

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Olhando a arquitetura

VPS;Servidor compartilhado;

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

E se … usarmos cache

● Falando em coisas que não estamos fazendo:– Já fazemos isso?

● Cache …...– Mas não é pra limpar?

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Por que usar o cache?

● Requisições – Idênticas;

– Diferentes;

● Conteúdo;– Estático;

– Dinâmico;

● Qual é o custo de uma requisição do meu site?

● Quanto de recurso eu gasto para atender um usuário?

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Aonde o cache entra

● Na frente;● No lado;● Atrás;● Usando conscientemente;

Faça do cache um aliado . . .

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Aonde o cache entra

● Podemos fazer cache de:– Texto;

– Imagens;

– Vídeos;

– Arquivos;

– Php, Asp, Rails, Django, etc . . .

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Aonde o cache entra

● Mas a linguagem é dinâmica!!!– Nem tudo é dinâmico . . .

● Requisição → processo → entrega;● Requisições iguais não precisam ser

processadas mais de uma vez;● Elementos diversos chamados pela

requisição podem estar em cache ou não;

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Aonde o cache entra

● Cautela . . .– Analise de viabilidade;

– Testes;

● Atenção especial– Cookies;

– Session;

– Session Hijacking;

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Session Hijacking

● O que é;● Como acontece;● Como o uso errôneo do cache

pode acarretar isso;

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Coitado do cache

● O vilão da história;● Crtl + Shift + Del;● Já limpou o cache?● O problema é o cache, limpa e

testa de novo;

#cacheforprod

#donocachedev

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Onde está o cache?

● Browser Cache;– Client cache;

● Server Cache;– Http Acelerator;

– Proxy Reverso;

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Falando de HTTP

● Cache e o Protocolo HTTP● Capítulo 4, Varnish Book

– Request;– Response;

● GET● HEADER● POST

– STATELESS– INDEMPOTENCE

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Falando de HTTP

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Falando de HTTP

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Falando de HTTP

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Olhando a arquitetura

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

O cache a nosso favor

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Varnish

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Varnish

● Reverse Proxy / Http Acelerator / Web Acelerator

● Designerd for:– Modern Hardware

– Modern O.S.

– Modern Work Loads

● VLC;● OpenSource;

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Mas eu só tenho um servidor

● Você pode usar o varnish com um único servidor:– Varnish – 80

– WebServer - ?

● https://www.varnish-cache.org/docs/3.0/faq/general.html#can-i

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Mas eu só tenho um servidor

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Requisição com Cache

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Requisição com Cache

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Não quero usar um serviço

● Dá pra resolver de outra maneira?

● Plugins– Worpress

● Wp-cache;● Wp Super Cache;● Wp File Cache

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Em números

● Talk is cheap!● Show me the … numbers

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Demo . . .

● Murpy`s law!!!!!

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Demo . . .

● Murpy`s law!!!!!

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Benchmark

Varnish Apache

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Benchmark

Varnish Apache

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

BenchmarkApache

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Benchmark

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Benchmark

● VMs– 2CPU;

– 512Mb;

● Debian– Request → Apache;

– Request → Varnish → Apache;

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Benchmark

● VMs– 2CPU;

– 512Mb;

● Debian– Request → Apache;

– Request → Varnish → Apache;

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Benchmark

● VMs– 2CPU;

– 512Mb;

● Debian– Request → Apache;

– Request → Varnish → Apache;

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Benchmark

● Recursos concorrentes– Varnish, apache, mysql

– Apache, mysql

@bggobruno@linux.com

Como fazer seu site/blog voar baixo sem muito esforço . . .

Obrigado

● bruno.gurgel@gmail.com● @bggo● https://github.com/bggo● www.brunogurgel.com.br

top related