SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
Varnish	
  3	
  e	
  Plone	
  4,	
  discu3ndo	
  a	
  
                                        relação.
                                               Python	
  Brasil	
  [7]
                                              São	
  Paulo	
  -­‐	
  Brasil




           @cleberjsantos
           cleber@simplesconsultoria.com.br
-­‐	
  Um	
  pouco	
  sobre	
  mim.
-­‐	
  Varnish	
  3.
-­‐	
  Plone	
  4.
-­‐	
  Varnish	
  3	
  e	
  Plone	
  4.
-­‐	
  Testes	
  ao	
  vivo	
  e	
  em	
  cores.




                     @cleberjsantos
                     cleber@simplesconsultoria.com.br
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...




                                     @cleberjsantos
                                     cleber@simplesconsultoria.com.br
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.




                             @cleberjsantos
                             cleber@simplesconsultoria.com.br
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.


                           @cleberjsantos
                           cleber@simplesconsultoria.com.br
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.


                            @cleberjsantos
                            cleber@simplesconsultoria.com.br
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.
       	
     	
   	
     	
       	
   ...


                           @cleberjsantos
                           cleber@simplesconsultoria.com.br
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.

       	
     	
     	
     	
     	
     ...




                            @cleberjsantos
                            cleber@simplesconsultoria.com.br
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.



                          @cleberjsantos
                          cleber@simplesconsultoria.com.br
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.




                           @cleberjsantos
                           cleber@simplesconsultoria.com.br
Varnish	
  [3]
Não	
  foram	
  incluídas	
  funcionalidade	
  extras	
  
normalmente	
  encontradas	
  em	
  outros	
  servidores	
  
de	
  proxy,	
  com	
  suporte	
  a	
  diversos	
  protocolos.




               @cleberjsantos
               cleber@simplesconsultoria.com.br
Varnish	
  [3]




              Why no SSL?
           @cleberjsantos
           cleber@simplesconsultoria.com.br
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)...




                                   @cleberjsantos
                                   cleber@simplesconsultoria.com.br
Plone	
  [4]
 @cleberjsantos
 cleber@simplesconsultoria.com.br
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.
	
   	
  ...




                                   @cleberjsantos
                                   cleber@simplesconsultoria.com.br
Varnish	
  [3]	
  
      e	
  
  Plone	
  [4]

@cleberjsantos
cleber@simplesconsultoria.com.br
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?



                                                  @cleberjsantos
                                                  cleber@simplesconsultoria.com.br
Varnish	
  [3]	
  e	
  Plone	
  [4]
   -­‐	
  ACHO	
  QUE	
  AINDA	
  TENHO	
  TEMPO	
  :-­‐D
   l   VMODs

   l   plone.app.caching

   l   Dicas.




                       @cleberjsantos
                       cleber@simplesconsultoria.com.br
Obrigado.

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



@cleberjsantos
cleber@simplesconsultoria.com.br

Mais conteúdo relacionado

Mais procurados

Compartilhamento no samba com permissão de grupo
Compartilhamento no samba com permissão de grupoCompartilhamento no samba com permissão de grupo
Compartilhamento no samba com permissão de grupoCarlos Eduardo
 
Instalação e configuração servidor dns - ubuntu server
Instalação e configuração servidor dns - ubuntu serverInstalação e configuração servidor dns - ubuntu server
Instalação e configuração servidor dns - ubuntu serverAparicio Junior
 
Processar fluxos de textos usando filtros
Processar fluxos de textos usando filtrosProcessar fluxos de textos usando filtros
Processar fluxos de textos usando filtrosSoftD Abreu
 
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...Marlon Willrich
 
Servidor DNS- BIND
Servidor DNS- BINDServidor DNS- BIND
Servidor DNS- BINDzbrendo
 
pfSense - Proxy com arquivo arquivo pac e wpad
pfSense - Proxy com arquivo arquivo pac e wpadpfSense - Proxy com arquivo arquivo pac e wpad
pfSense - Proxy com arquivo arquivo pac e wpadCavalcante Treinamentos
 

Mais procurados (13)

Compartilhamento no samba com permissão de grupo
Compartilhamento no samba com permissão de grupoCompartilhamento no samba com permissão de grupo
Compartilhamento no samba com permissão de grupo
 
Instalação e configuração servidor dns - ubuntu server
Instalação e configuração servidor dns - ubuntu serverInstalação e configuração servidor dns - ubuntu server
Instalação e configuração servidor dns - ubuntu server
 
Dhcp
DhcpDhcp
Dhcp
 
GlusterFs
GlusterFsGlusterFs
GlusterFs
 
Linux - Servidor Web Apache
Linux - Servidor Web ApacheLinux - Servidor Web Apache
Linux - Servidor Web Apache
 
Dhcp
DhcpDhcp
Dhcp
 
Processar fluxos de textos usando filtros
Processar fluxos de textos usando filtrosProcessar fluxos de textos usando filtros
Processar fluxos de textos usando filtros
 
Instalação do Servidor Ubuntu 12.04 32 bits
Instalação do Servidor Ubuntu 12.04 32 bitsInstalação do Servidor Ubuntu 12.04 32 bits
Instalação do Servidor Ubuntu 12.04 32 bits
 
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
 
Servidor DNS- BIND
Servidor DNS- BINDServidor DNS- BIND
Servidor DNS- BIND
 
Samba4+backup
Samba4+backupSamba4+backup
Samba4+backup
 
pfSense - Proxy com arquivo arquivo pac e wpad
pfSense - Proxy com arquivo arquivo pac e wpadpfSense - Proxy com arquivo arquivo pac e wpad
pfSense - Proxy com arquivo arquivo pac e wpad
 
Aula introdutoria parte 2
Aula introdutoria   parte 2Aula introdutoria   parte 2
Aula introdutoria parte 2
 

Destaque

Revista noize 42 abril de 2011
Revista noize 42   abril de 2011Revista noize 42   abril de 2011
Revista noize 42 abril de 2011gipsilver
 
Administracao de infraestrutura_zope_plone
Administracao de infraestrutura_zope_ploneAdministracao de infraestrutura_zope_plone
Administracao de infraestrutura_zope_plonemarkondess
 
Gripe A Joaosousa Bagagem 6ºE
Gripe A Joaosousa Bagagem 6ºEGripe A Joaosousa Bagagem 6ºE
Gripe A Joaosousa Bagagem 6ºEguest1465e5
 
Renato russo renato-russo_de_a_a_z
Renato russo renato-russo_de_a_a_zRenato russo renato-russo_de_a_a_z
Renato russo renato-russo_de_a_a_zMarcos Ribeiro
 
Programabilida de BrOffice.org - Fisl 11
Programabilida de BrOffice.org - Fisl 11Programabilida de BrOffice.org - Fisl 11
Programabilida de BrOffice.org - Fisl 11William Colen
 
Biblioteca 1892 (1)
Biblioteca 1892 (1)Biblioteca 1892 (1)
Biblioteca 1892 (1)Ronaldo Henn
 
VGMusic como produto cultural autônomo: a música para além dos videogames
VGMusic como produto cultural autônomo: a música para além dos videogamesVGMusic como produto cultural autônomo: a música para além dos videogames
VGMusic como produto cultural autônomo: a música para além dos videogamesCamila Schäfer
 

Destaque (10)

Revista noize 42 abril de 2011
Revista noize 42   abril de 2011Revista noize 42   abril de 2011
Revista noize 42 abril de 2011
 
Portfolio Raquel
Portfolio RaquelPortfolio Raquel
Portfolio Raquel
 
Administracao de infraestrutura_zope_plone
Administracao de infraestrutura_zope_ploneAdministracao de infraestrutura_zope_plone
Administracao de infraestrutura_zope_plone
 
Gripe A Joaosousa Bagagem 6ºE
Gripe A Joaosousa Bagagem 6ºEGripe A Joaosousa Bagagem 6ºE
Gripe A Joaosousa Bagagem 6ºE
 
Renato russo renato-russo_de_a_a_z
Renato russo renato-russo_de_a_a_zRenato russo renato-russo_de_a_a_z
Renato russo renato-russo_de_a_a_z
 
Radar
RadarRadar
Radar
 
Programabilida de BrOffice.org - Fisl 11
Programabilida de BrOffice.org - Fisl 11Programabilida de BrOffice.org - Fisl 11
Programabilida de BrOffice.org - Fisl 11
 
O Futuro do Plone
O Futuro do PloneO Futuro do Plone
O Futuro do Plone
 
Biblioteca 1892 (1)
Biblioteca 1892 (1)Biblioteca 1892 (1)
Biblioteca 1892 (1)
 
VGMusic como produto cultural autônomo: a música para além dos videogames
VGMusic como produto cultural autônomo: a música para além dos videogamesVGMusic como produto cultural autônomo: a música para além dos videogames
VGMusic como produto cultural autônomo: a música para além dos videogames
 

Semelhante a Varnish3, Plone4: Discutindo a Relação

Treinamento de Performance and tuning
Treinamento de Performance and tuningTreinamento de Performance and tuning
Treinamento de Performance and tuningDell Technologies
 
Programação em Shell Script
Programação em Shell ScriptProgramação em Shell Script
Programação em Shell ScriptReinaldo Lima
 
Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2PrinceGuru MS
 
Linux Servidor Proxy(squid)
Linux Servidor Proxy(squid)Linux Servidor Proxy(squid)
Linux Servidor Proxy(squid)elliando dias
 
Troubleshooting docker
Troubleshooting dockerTroubleshooting docker
Troubleshooting dockerRafael Gomes
 
Otimizacao de websites em PHP
Otimizacao de websites em PHPOtimizacao de websites em PHP
Otimizacao de websites em PHPFelipe Ribeiro
 
Palestra Hardening Linux - Por Juliano Bento - V FGSL e I SGSL
Palestra Hardening Linux - Por Juliano Bento - V FGSL e I SGSLPalestra Hardening Linux - Por Juliano Bento - V FGSL e I SGSL
Palestra Hardening Linux - Por Juliano Bento - V FGSL e I SGSLfgsl
 
Web Training Aula 03: Introduction to Laravel
Web Training Aula 03: Introduction to LaravelWeb Training Aula 03: Introduction to Laravel
Web Training Aula 03: Introduction to LaravelMozDevz
 
Talk no Meetup LaravelSP #3
Talk no Meetup LaravelSP #3Talk no Meetup LaravelSP #3
Talk no Meetup LaravelSP #3Wellington Silva
 
Curso de Performance and Tuning - Linux
Curso de Performance and Tuning - LinuxCurso de Performance and Tuning - Linux
Curso de Performance and Tuning - LinuxDell Technologies
 
PHP Jedi - Boas Práticas e Alta Performance
PHP Jedi - Boas Práticas e Alta PerformancePHP Jedi - Boas Práticas e Alta Performance
PHP Jedi - Boas Práticas e Alta PerformanceFelipe Ribeiro
 
Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?Marcelo Dieder
 
Skytools, pgbouncer e plproxy
Skytools, pgbouncer e plproxySkytools, pgbouncer e plproxy
Skytools, pgbouncer e plproxyFernando Ike
 

Semelhante a Varnish3, Plone4: Discutindo a Relação (20)

Vamos conversar sobre cache
Vamos conversar sobre cacheVamos conversar sobre cache
Vamos conversar sobre cache
 
Treinamento de Performance and tuning
Treinamento de Performance and tuningTreinamento de Performance and tuning
Treinamento de Performance and tuning
 
Programação em Shell Script
Programação em Shell ScriptProgramação em Shell Script
Programação em Shell Script
 
Servidor Proxy Squid
Servidor Proxy SquidServidor Proxy Squid
Servidor Proxy Squid
 
Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2
 
Squid
SquidSquid
Squid
 
Curso gratuitoshellscript nivel-2
Curso gratuitoshellscript nivel-2Curso gratuitoshellscript nivel-2
Curso gratuitoshellscript nivel-2
 
Curso de perl
Curso de perlCurso de perl
Curso de perl
 
Linux Servidor Proxy(squid)
Linux Servidor Proxy(squid)Linux Servidor Proxy(squid)
Linux Servidor Proxy(squid)
 
Troubleshooting docker
Troubleshooting dockerTroubleshooting docker
Troubleshooting docker
 
Otimizacao de websites em PHP
Otimizacao de websites em PHPOtimizacao de websites em PHP
Otimizacao de websites em PHP
 
Palestra Hardening Linux - Por Juliano Bento - V FGSL e I SGSL
Palestra Hardening Linux - Por Juliano Bento - V FGSL e I SGSLPalestra Hardening Linux - Por Juliano Bento - V FGSL e I SGSL
Palestra Hardening Linux - Por Juliano Bento - V FGSL e I SGSL
 
Web Training Aula 03: Introduction to Laravel
Web Training Aula 03: Introduction to LaravelWeb Training Aula 03: Introduction to Laravel
Web Training Aula 03: Introduction to Laravel
 
Mastering Laravel
Mastering LaravelMastering Laravel
Mastering Laravel
 
Talk no Meetup LaravelSP #3
Talk no Meetup LaravelSP #3Talk no Meetup LaravelSP #3
Talk no Meetup LaravelSP #3
 
Curso de Performance and Tuning - Linux
Curso de Performance and Tuning - LinuxCurso de Performance and Tuning - Linux
Curso de Performance and Tuning - Linux
 
PHP Jedi - Boas Práticas e Alta Performance
PHP Jedi - Boas Práticas e Alta PerformancePHP Jedi - Boas Práticas e Alta Performance
PHP Jedi - Boas Práticas e Alta Performance
 
Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?
 
Skytools, pgbouncer e plproxy
Skytools, pgbouncer e plproxySkytools, pgbouncer e plproxy
Skytools, pgbouncer e plproxy
 
De 1 a 1.000.00 de usuários
De 1 a 1.000.00 de usuáriosDe 1 a 1.000.00 de usuários
De 1 a 1.000.00 de usuários
 

Varnish3, Plone4: Discutindo a Relação

  • 1. Varnish  3  e  Plone  4,  discu3ndo  a   relação. Python  Brasil  [7] São  Paulo  -­‐  Brasil @cleberjsantos cleber@simplesconsultoria.com.br
  • 2. -­‐  Um  pouco  sobre  mim. -­‐  Varnish  3. -­‐  Plone  4. -­‐  Varnish  3  e  Plone  4. -­‐  Testes  ao  vivo  e  em  cores. @cleberjsantos cleber@simplesconsultoria.com.br
  • 3. 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... @cleberjsantos cleber@simplesconsultoria.com.br
  • 4. 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. @cleberjsantos cleber@simplesconsultoria.com.br
  • 5. 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. @cleberjsantos cleber@simplesconsultoria.com.br
  • 6. 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. @cleberjsantos cleber@simplesconsultoria.com.br
  • 7. 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.           ... @cleberjsantos cleber@simplesconsultoria.com.br
  • 8. 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.           ... @cleberjsantos cleber@simplesconsultoria.com.br
  • 9. 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. @cleberjsantos cleber@simplesconsultoria.com.br
  • 10. 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. @cleberjsantos cleber@simplesconsultoria.com.br
  • 11. Varnish  [3] Não  foram  incluídas  funcionalidade  extras   normalmente  encontradas  em  outros  servidores   de  proxy,  com  suporte  a  diversos  protocolos. @cleberjsantos cleber@simplesconsultoria.com.br
  • 12. Varnish  [3] Why no SSL? @cleberjsantos cleber@simplesconsultoria.com.br
  • 13. 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)... @cleberjsantos cleber@simplesconsultoria.com.br
  • 14. Plone  [4] @cleberjsantos cleber@simplesconsultoria.com.br
  • 15. 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.    ... @cleberjsantos cleber@simplesconsultoria.com.br
  • 16. Varnish  [3]   e   Plone  [4] @cleberjsantos cleber@simplesconsultoria.com.br
  • 17. 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? @cleberjsantos cleber@simplesconsultoria.com.br
  • 18. Varnish  [3]  e  Plone  [4] -­‐  ACHO  QUE  AINDA  TENHO  TEMPO  :-­‐D l VMODs l plone.app.caching l Dicas. @cleberjsantos cleber@simplesconsultoria.com.br
  • 19. Obrigado. Python  Brasil  [7] São  Paulo  -­‐  Brasil @cleberjsantos cleber@simplesconsultoria.com.br