varnish3, plone4: discutindo a relação

19
@cleberjsantos [email protected] Varnish 3 e Plone 4, discu3ndo a relação. Python Brasil [7] São Paulo Brasil

Upload: simples-consultoria

Post on 19-May-2015

3.030 views

Category:

Technology


0 download

DESCRIPTION

Administradores de sites sabem bem a importância de ter um bom servidor de cache, melhor ainda se este servidor permite manipulações e reescritas de URLs além de servir como servidor Web. E para quem usa o Plone pode aproveitar-se dos recursos oferecidos pelo Varnish 3.

TRANSCRIPT

Page 1: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Varnish  3  e  Plone  4,  discu3ndo  a  relação.

Python  Brasil  [7]São  Paulo  -­‐  Brasil

Page 2: Varnish3, Plone4: Discutindo a Relação

@[email protected]

-­‐  Um  pouco  sobre  mim.-­‐  Varnish  3.-­‐  Plone  4.-­‐  Varnish  3  e  Plone  4.-­‐  Testes  ao  vivo  e  em  cores.

Page 3: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Quem  é  você  abestado?

-­‐  Programador  desde  2001.

-­‐  Auto-­‐didata  e  militante  de  So>ware  Livre.

-­‐  Apaixonado  por  linguagens  anDgas  como  Pascal,

Cobol  e  Assembly.

-­‐  Viciado  em  chocolate  (CHARGE)  e  café.

-­‐  Não  dispenso  uma  bela  macarronada.

-­‐  E  Simplificador...

Page 4: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Varnish  [3]

-­‐  Tudo  que  você  precisa  saber.

l  Varnish  ou  no  português  Verniz  foi  inicialmente  desenvolvido  e  liberado  na  versão  1.0  pelo  dinamarquês  Poul-­‐Henning  Kamp.

l  É  open  source,  distribuído  sob  a  licença  BSD.

l  É  um  acelerador  HTTP  projetado  para  sites  web  dinâmicos  com  alto  volume  de  conteúdo,  projetado  desde  o  início  como  um  acelerador  HTTP.

Page 5: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Varnish  [3]

-­‐  Algumas  das  principais  caracterísDcas.

l  Alta  performance.

l  Controle  sobre  cada  resposta  às  requisições.

l  Controle  sobre  o  que  deverá  ser  cacheado.

l  Ferramentas  de  apoio  e  gerenciamento  do  sistema  de  cache.

l  Log  centralizado  em  memória.

Page 6: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Varnish  [3]

-­‐  Alta  performance

l  Desenvolvido  especificamente  para  servir  de  proxy  reverso  para  sistemas  de  gerenciamento  de  conteúdo  lentos.

l  Foco  100%  em  performance.

l  Capacidade  de  trabalhar  em  32  ou  64  bits  aproveitando  ao  máximo  cada  operação  do  processador.

l  MulD-­‐cpu  e  mulD-­‐core.

Page 7: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Varnish  [3]

-­‐  Controle  sobre  cada  Resposta  às  requisições.

l  Podemos  sobrescrever  o  TTL  dos  pacotes,  adicionar  ou  remover  cabeçalhos,  remover  cookies,  reescrever  urls  e  invalidar  objetos  no  cache.

l  Suporte  a  balanceamento  de  carga  inclusive  com  checagem  da  saúde  dos  servidores.

l  Capacidade  de  trabalhar  com  múlDplos  arquivos  de  configuração  VCL.             ...

Page 8: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Varnish  [3]

-­‐  Controle  sobre  o  que  deverá  ser  cacheado.

l  Implementa  parcialmente  ESI,  a  qual  permite  se  definir,  no  código  da  aplicação,  como  deverá  funcionar  o  cache  para  as  diversas  partes  de  uma  página  Web.  Com  isso  é  possível  definir  propriedades  de  cache  diferentes  para  partes  diferentes  de  uma  mesma  página.

            ...

Page 9: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Varnish  [3]

-­‐  Ferramentas  de  apoio  e  gerenciamento  do  sistema  de  cache.

l  Interface  telnet  para  gerenciamento  da  aplicação  CLI  (Command  Line  Interface).

l  Ferramentas  de  grenciamento  de  admintração  em  modo  texto  (console)  VarnishHist,  VarnishLog,  VarnishCsa,  VarnishStat,  VarnishTest,  VarnishSizes  e  Varnishtop.

Page 10: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Varnish  [3]

-­‐  Log  centralizado  em  memória.

l  Para  evitar  chamadas  de  gravação  em  disco  desnecessárias,  todo  o  gerenciamento  do  log  é  feito  em  memória.

l  VarnishLog  e  VarnishCsa  para  uma  análise  mais  profunda.

l  Possíbilidades  de  amarzenagem  de  logs  no  padrão  Apache  por  exemplo.

Page 11: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Varnish  [3]

Não  foram  incluídas  funcionalidade  extras  normalmente  encontradas  em  outros  servidores  de  proxy,  com  suporte  a  diversos  protocolos.

Page 12: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Varnish  [3]

Why no SSL?

Page 13: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Varnish  [3]https://www.varnish-cache.org/docs/trunk/phk/ssl.html

Há  uma  série  de  razões  pelas  quais  não  há  planos  em  vista  que  irá  crescer  suporte  SSL  no  Varnish.

-­‐  Primeiro,  eu  tenho  para  ver  ainda  uma  biblioteca  de  SSL,  onde  o  código  fonte  não  é  um  pesadelo.

-­‐  Enquanto  escrevo  isto,  a  árvore  de  código  fonte  do  Varnish  contém  82,595  de  linhas  .c  e  arquivos  .h,  incluindo  JEmalloc  (12,236  linhas)  e  Zlib  (12,344  linhas)...

Page 14: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Plone  [4]

Page 15: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Plone  [4]-­‐  Dispensa  apresentações,  mas...

    -­‐  Poderoso.

   -­‐  Super  rápido,  cerca  de  50%  mais  rápido  do  Plone  3  em  geral.

   -­‐  Bonito.

   -­‐  Elegante,  minimalista,  moderno  e  fácil  de  personalizar.

   -­‐  Fácil  de  usar.

   -­‐  Tem  uma  grande  comunidade.

   ...

Page 16: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Varnish  [3]  e  

Plone  [4]

Page 17: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Varnish  [3]  e  Plone  [4]

l Um  pouco  de  VCL  para  o  Plone  …

sub  vcl_recv  {

       set  req.grace  =  120s;

       if  (req.hwp.host  ~  "^(www.)?meuplone.com.br(:[0-­‐9]+)?$")  {

               set  req.hwp.host  =  "www.meuplone.com.br";

               set  req.backend  =  plone;

...

Eu  disse  que  é  na  prá3ca?

Page 18: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Varnish  [3]  e  Plone  [4]

-­‐  ACHO  QUE  AINDA  TENHO  TEMPO  :-­‐D

l VMODs

l plone.app.caching

l Dicas.

Page 19: Varnish3, Plone4: Discutindo a Relação

@[email protected]

Obrigado.

Python  Brasil  [7]São  Paulo  -­‐  Brasil