Drupal Performance
Upcoming SlideShare
Loading in...5
×
 

Drupal Performance

on

  • 529 views

 

Statistics

Views

Total Views
529
Views on SlideShare
529
Embed Views
0

Actions

Likes
1
Downloads
2
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Drupal Performance Drupal Performance Presentation Transcript

  • Drupal PerformanceDicas e técnicas para levar seu Drupal às nuvensDrupalcamp São Paulo 2013by Paulino Michelazzo
  • Por quê WPO?web performance optimization
  • 43%57%3 sec> 3 sec57% dosvisitantes de sitesde viagens saemapós 3 segundos25% mobile
  • 1 segundo é...- 11%pageviews- 7%conversões- 16%satisfação
  • 1.6 bilhões de dólares emvendas anuais
  • 25% de acréscimo em pageviews7 a 12% aumento nas vendas50% de redução de hardware
  • tempo é dinheiro
  • definindoperformance
  • é lento ou está lento?
  • O Drupal é lento?Não!Desenvolvedores ee designers otornam lento
  • 1ª regradefinir se o website é lentoou se ele está lento
  • o que é lento?
  • aquilo que impacta naconversão de usuários
  • 14% 86%backend frontend10.91.6Top 300K
  • 80 a 90% daslesmas estão nofront-endMate-as antes2ª regra
  • 80 ~ 90% no Drupaltema
  • • Arquivos JavaScript• Arquivos CSS• Imagens• Requisições HTTP• DNS Lookup’s
  • 3 arquivosativar1 arquivo
  • JavaScript• Colocá-los no fim do código• Minificar arquivos• Carregar arquivos externosassincronamente• Combinar arquivos
  • Carga assíncronavar script = document.createElement(script),scripts = document.getElementsByTagName(script)[0];script.async = true;script.src = url;scripts.parentNode.insertBefore(script, scripts);
  • FiF - frame in frame(function() {var url = http://example.org/js.js;var iframe = document.createElement(iframe);(iframe.frameElement || iframe).style.cssText ="width: 0; height: 0; border: 0";iframe.src = "javascript:false";var where = document.getElementsByTagName(script)[0];where.parentNode.insertBefore(iframe, where);var doc = iframe.contentWindow.document;doc.open().write(<body onload="+var js = document.createElement(script);+js.src = + url +;+document.body.appendChild(js);">);doc.close();}());https://www.facebook.com/note.php?note_id=10151176218703920
  • 8 arquivos3 arquivosativar
  • Apelando...function hook_css_alter(&$css) {// Remove defaults.css file.unset($css[drupal_get_path(module,system)/defaults.css]);}
  • CSS• Colocá-los no início do código• Minificar arquivos• Fugir de @import• Combinar arquivos
  • 98k 25k73kImagens
  • 53k 1.9k51.1k97%Imagens
  • Imagens• JPG• Progressivas• Qualidade• PNG• IndexadasDPI não se usa emmonitor!!!
  • requisições HTTP• Não fazer• Não fazer• Precisa fazer, reduza• (menos css, menos js, menos imagens)
  • o terror da requisição404
  • DNS Lookup’s• Reduza• Reduza• Precisa mesmo? Traga para mais perto• perto = dentro
  • 3ª regra10 e 20%rede e servidordifícil, mas nãoimpossível
  • tempo para 1º byteDNS lookupConexão inicialTempo de espera
  • 10 ~ 20% no Drupal
  • cache• APC - Alternative PHP Cache• cache de código PHP• Memcached• cache banco e código• Varnish• cache não-autenticado
  • boost• Módulo que não depende de terceirospara funcionamento• Alternativa ao Varnish
  • views• views cache• basta ativar• views litepager (drupal.org/project/views_litepager)• remove query COUNT• não apresenta nº total de páginas• não permite navegação para última
  • cache de blocos• Reduz o tempo de carga de blocos• Maravilhoso em conjunto commemcache
  • Tips & Tricks
  • • realpath_cache_size = 64K (monitore)• query_cache_size = 128M• query_cache_limit = 1M
  • • Database logging (dblog)• Statistics• PHP filterCorram!!!!!
  • Last words• Otimização é trabalhosa• mas o resultado vale a pena• Otimização é experiência• combinar ingredientes e cenários
  • obrigadoPaulino Michelazzoabout.me/pmichelazzo