44
@bggo [email protected] Como fazer seu site/blog voar baixo sem muito esforço Como fazer seu site/blog voar baixo sem muito esforço . . .

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

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

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

Page 2: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Apresentação

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

Page 3: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

# whoami

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

Page 4: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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;

Page 5: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Introdução

Page 6: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Introdução

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

É comum!!!

Page 7: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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;

Page 8: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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 . . .

Page 9: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Olhando a arquitetura

Page 10: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Olhando a arquitetura

VPS;Servidor compartilhado;

Page 11: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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?

Page 12: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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?

Page 13: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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 . . .

Page 14: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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 . . .

Page 15: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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;

Page 16: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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;

Page 17: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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;

Page 18: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Page 19: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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;

Page 20: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Page 21: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Falando de HTTP

Page 22: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Falando de HTTP

Page 23: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Falando de HTTP

Page 24: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Olhando a arquitetura

Page 25: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

O cache a nosso favor

Page 26: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Varnish

Page 27: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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;

Page 28: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Page 29: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Mas eu só tenho um servidor

Page 30: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Requisição com Cache

Page 31: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Requisição com Cache

Page 32: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Page 33: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Em números

● Talk is cheap!● Show me the … numbers

Page 34: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Demo . . .

● Murpy`s law!!!!!

Page 35: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Demo . . .

● Murpy`s law!!!!!

Page 36: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Benchmark

Varnish Apache

Page 37: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Benchmark

Varnish Apache

Page 38: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

BenchmarkApache

Page 39: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Benchmark

Page 40: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Benchmark

● VMs– 2CPU;

– 512Mb;

● Debian– Request → Apache;

– Request → Varnish → Apache;

Page 41: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Benchmark

● VMs– 2CPU;

– 512Mb;

● Debian– Request → Apache;

– Request → Varnish → Apache;

Page 42: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Benchmark

● VMs– 2CPU;

– 512Mb;

● Debian– Request → Apache;

– Request → Varnish → Apache;

Page 43: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Benchmark

● Recursos concorrentes– Varnish, apache, mysql

– Apache, mysql

Page 44: Como aumentar a performance do seu site ou blog sem muito esforço

@[email protected]

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

Obrigado

[email protected]● @bggo● https://github.com/bggo● www.brunogurgel.com.br