0
Why Drupal is so
SLOW ...?!!!
Why Drupal is so
SLOW ...?!!!
•   long term drupal user (2001)
•   long term drupal user (2001)

•   schenker domain d.o
•   long term drupal user (2001)

•   schenker domain d.o

•   Permanent Member Drupal Association
•   long term drupal user (2001)

•   schenker domain d.o

•   Permanent Member Drupal Association

•   bertboerland op el...
•   long term drupal user (2001)

•   schenker domain d.o

•   Permanent Member Drupal Association

•   bertboerland op el...
“Thank you #ATOS for hosting the #phpbnl
meeting”
•   Hashtag #phpbnl
•   Hashtag #phpbnl

•   Subhastag @bertboerland #fail :-)
•   Wie heeft Drupal geïnstalleerd?
•   Wie heeft Drupal geïnstalleerd?

•   Wie heeft high volume PHP websites gebouwd?
•   Wie heeft Drupal geïnstalleerd?

•   Wie heeft high volume PHP websites gebouwd?

•   Wie heeft high volume Drupal web...
•   Wie heeft Drupal geïnstalleerd?

•   Wie heeft high volume PHP websites gebouwd?

•   Wie heeft high volume Drupal web...
•   Google: +0,4 seconde = -0,6% verkeer
•   Google: +0,4 seconde = -0,6% verkeer

•   Yahoo! +0,4 seconde = -7% verkeer
•   Google: +0,4 seconde = -0,6% verkeer

•   Yahoo! +0,4 seconde = -7% verkeer

•   Bing: -2 seconde = +4% verkeer
•   Google: +0,4 seconde = -0,6% verkeer

•   Yahoo! +0,4 seconde = -7% verkeer

•   Bing: -2 seconde = +4% verkeer

•   S...
•   Google: +0,4 seconde = -0,6% verkeer

•   Yahoo! +0,4 seconde = -7% verkeer

•   Bing: -2 seconde = +4% verkeer

•   S...
•   Google: +0,4 seconde = -0,6% verkeer

•   Yahoo! +0,4 seconde = -7% verkeer

•   Bing: -2 seconde = +4% verkeer

•   S...
•   Keten
•   Keten

•   Drupal
•   Keten

•   Drupal

•   Proces
•   NCRV.nl en RNW.nl

•   Honderduizendenden hits per dag, Tienduizend artikelen per maand
•   RNW.nl
user > browser > network > site
user > browser > network > site
user > browser > network > site
•   Juiste gestructureerde informatie verkrijgen; “het is langzaam” vs tijd, browser,
    actie, URL etc...
•   Juiste gestructureerde informatie verkrijgen; “het is langzaam” vs tijd, browser,
    actie, URL etc...

•   Redacteur...
•   Juiste gestructureerde informatie verkrijgen; “het is langzaam” vs tijd, browser,
    actie, URL etc...

•   Redacteur...
•   Juiste gestructureerde informatie verkrijgen; “het is langzaam” vs tijd, browser,
    actie, URL etc...

•   Redacteur...
•   Juiste gestructureerde informatie verkrijgen; “het is langzaam” vs tijd, browser,
    actie, URL etc...

•   Redacteur...
•   Progressive rendering (HTML en plaatjes)
•   Progressive rendering (HTML en plaatjes)

•   Externe Javascript (extern domain als CDN)
•   Progressive rendering (HTML en plaatjes)

•   Externe Javascript (extern domain als CDN)

•   CSS Sprites
•   Progressive rendering (HTML en plaatjes)

•   Externe Javascript (extern domain als CDN)

•   CSS Sprites

•   Reduce ...
•   Progressive rendering (HTML en plaatjes)

•   Externe Javascript (extern domain als CDN)

•   CSS Sprites

•   Reduce ...
•   Progressive rendering (HTML en plaatjes)

•   Externe Javascript (extern domain als CDN)

•   CSS Sprites

•   Reduce ...
Tools:
Tools:

•   YSlow
Tools:

•   YSlow

•   JSLint
Tools:

•   YSlow

•   JSLint

•   NET
Tools:

•   YSlow

•   JSLint

•   NET

•   CSS Sprite generatoren
Tools:

•   YSlow

•   JSLint

•   NET

•   CSS Sprite generatoren

•   HTML, CSS, RSS validatie
Tools:

•   YSlow

•   JSLint

•   NET

•   CSS Sprite generatoren

•   HTML, CSS, RSS validatie
•   Asymetrische routering is een feit (en niet te zien!)
•   Asymetrische routering is een feit (en niet te zien!)

•   BGP is niet voor watjes
•   Asymetrische routering is een feit (en niet te zien!)

•   BGP is niet voor watjes

•   Bandbreedte meet je niet in Mb...
•   Asymetrische routering is een feit (en niet te zien!)

•   BGP is niet voor watjes

•   Bandbreedte meet je niet in Mb...
•   Asymetrische routering is een feit (en niet te zien!)

•   BGP is niet voor watjes

•   Bandbreedte meet je niet in Mb...
Tools
Tools

•   AS Looking glasses
Tools

•   AS Looking glasses

•   MTR
Tools

•   AS Looking glasses

•   MTR
•   Doe maar geen Source / Destiantie hash op je loadbalancers :-)
•   Doe maar geen Source / Destiantie hash op je loadbalancers :-)

•   Least connections kan beste zijn
•   Doe maar geen Source / Destiantie hash op je loadbalancers :-)

•   Least connections kan beste zijn

•   Route static...
•   Doe maar geen Source / Destiantie hash op je loadbalancers :-)

•   Least connections kan beste zijn

•   Route static...
•   Doe maar geen Source / Destiantie hash op je loadbalancers :-)

•   Least connections kan beste zijn

•   Route static...
•   Doe maar geen Source / Destiantie hash op je loadbalancers :-)

•   Least connections kan beste zijn

•   Route static...
•   Doe maar geen Source / Destiantie hash op je loadbalancers :-)

•   Least connections kan beste zijn

•   Route static...
•   Apache tunen is een kunst, PHP tunen is een martial art
•   Apache tunen is een kunst, PHP tunen is een martial art

•   PHP 16 MB is niets, 128 bijna norm (modules vreten geheug...
•   Apache tunen is een kunst, PHP tunen is een martial art

•   PHP 16 MB is niets, 128 bijna norm (modules vreten geheug...
•   Apache tunen is een kunst, PHP tunen is een martial art

•   PHP 16 MB is niets, 128 bijna norm (modules vreten geheug...
•   Apache tunen is een kunst, PHP tunen is een martial art

•   PHP 16 MB is niets, 128 bijna norm (modules vreten geheug...
•   Apache tunen is een kunst, PHP tunen is een martial art

•   PHP 16 MB is niets, 128 bijna norm (modules vreten geheug...
•   Apache tunen is een kunst, PHP tunen is een martial art

•   PHP 16 MB is niets, 128 bijna norm (modules vreten geheug...
•   Do use opcode cachers! (APC)
•   Do use opcode cachers! (APC)
•   Do use opcode cachers! (APC)
•   Do use opcode cachers! (APC)
•   Do use opcode cachers! (APC)
•   Standaard caching in database
•   Standaard caching in database

•   Helemaal aan het einde van de keten
•   Standaard caching in database

•   Helemaal aan het einde van de keten

•   Beter dan niets
•   Standaard caching in database

•   Helemaal aan het einde van de keten

•   Beter dan niets

•   Daar is alles mee gez...
•   Standaard module
•   Standaard module

•   “Bijna geen issues”
•   Standaard module

•   “Bijna geen issues”

•   Alle anon bezoek cachen
•   Standaard module

•   “Bijna geen issues”

•   Alle anon bezoek cachen

•   Hit rate vaak rond 90%
•   Standaard module

•   “Bijna geen issues”

•   Alle anon bezoek cachen

•   Hit rate vaak rond 90%

•   Load database
•   Standaard module

•   “Bijna geen issues”

•   Alle anon bezoek cachen

•   Hit rate vaak rond 90%

•   Load database
...
•   Standaard module
•   Standaard module

•   Database 1,5 GB waarvan 800MB search
•   Standaard module

•   Database 1,5 GB waarvan 800MB search

•   Geen spider (W.I.P)
•   Standaard module

•   Database 1,5 GB waarvan 800MB search

•   Geen spider (W.I.P)

•   Standaard search geeft veel S...
•   Standaard module

•   Database 1,5 GB waarvan 800MB search

•   Geen spider (W.I.P)

•   Standaard search geeft veel S...
•   Standaard module

•   Database 1,5 GB waarvan 800MB search

•   Geen spider (W.I.P)

•   Standaard search geeft veel S...
•   Standaard module

•   Database 1,5 GB waarvan 800MB search

•   Geen spider (W.I.P)

•   Standaard search geeft veel S...
•   Ook als service te “koop”
•   Ook als service te “koop”

•   Autocomplete modules
•   Ook als service te “koop”

•   Autocomplete modules

•   Faceted search modules
•   Ook als service te “koop”

•   Autocomplete modules

•   Faceted search modules

•   CCK integration
•   Ook als service te “koop”

•   Autocomplete modules

•   Faceted search modules

•   CCK integration

•   Views integr...
•   Ook als service te “koop”

•   Autocomplete modules

•   Faceted search modules

•   CCK integration

•   Views integr...
•   Ook als service te “koop”

•   Autocomplete modules

•   Faceted search modules

•   CCK integration

•   Views integr...
•   Redelijk goed te doen
•   Redelijk goed te doen

•   Start met MySQLAdmin
•   Redelijk goed te doen

•   Start met MySQLAdmin

•   MySQLOptimize is symptoom bestrijding
    (but so is duckttape)
•   Redelijk goed te doen

•   Start met MySQLAdmin

•   MySQLOptimize is symptoom bestrijding
    (but so is duckttape)

...
•   Redelijk goed te doen

•   Start met MySQLAdmin

•   MySQLOptimize is symptoom bestrijding
    (but so is duckttape)

...
•   Redelijk goed te doen

•   Start met MySQLAdmin

•   MySQLOptimize is symptoom bestrijding
    (but so is duckttape)

...
•   Redelijk goed te doen

•   Start met MySQLAdmin

•   MySQLOptimize is symptoom bestrijding
    (but so is duckttape)

...
•   Javascript aggregatie
•   Javascript aggregatie

•   CSS aggregatie
•   Javascript aggregatie

•   CSS aggregatie

•   Logging uit of naar syslog
•   Javascript aggregatie

•   CSS aggregatie

•   Logging uit of naar syslog

•   Caching normaal 5 minuten (block cache ...
•   Javascript aggregatie

•   CSS aggregatie

•   Logging uit of naar syslog

•   Caching normaal 5 minuten (block cache ...
•   Javascript aggregatie

•   CSS aggregatie

•   Logging uit of naar syslog

•   Caching normaal 5 minuten (block cache ...
•   Javascript aggregatie

•   CSS aggregatie

•   Logging uit of naar syslog

•   Caching normaal 5 minuten (block cache ...
•   Javascript aggregatie

•   CSS aggregatie

•   Logging uit of naar syslog

•   Caching normaal 5 minuten (block cache ...
•   SOLR/Memcache
•   SOLR/Memcache

•   Boost
•   SOLR/Memcache

•   Boost

•   Cacherouter
•   SOLR/Memcache

•   Boost

•   Cacherouter

•   Block caching
•   SOLR/Memcache

•   Boost

•   Cacherouter

•   Block caching
•   SOLR/Memcache

•   Boost

•   Cacherouter

•   Block caching




•   DOP: views optimalisatie
•   SOLR/Memcache

•   Boost

•   Cacherouter

•   Block caching




•   DOP: views optimalisatie
http://groups.drupal.org/node/25617
•   Groups http://groups.drupal.org/high-performance
•   Groups http://groups.drupal.org/high-performance

•   Drupal Handbook http://drupal.org/node/326504
•   Groups http://groups.drupal.org/high-performance

•   Drupal Handbook http://drupal.org/node/326504

•   Drupal Module...
•   Groups http://groups.drupal.org/high-performance

•   Drupal Handbook http://drupal.org/node/326504

•   Drupal Module...
Use real data!
Verander een ding
ter gelijke tijd
Sluit niets uit,

Denk buiten de
doos!
Geen twee
trajecten zijn
het zelfde!
Verleidelijk om op
laureren te rusten
als is opgelost...
... maar het is nooit opgelost
•   ab / jmeter

•   develop module

•   Yslow

•   PHP logging

•   MyTop

•   Explain

•   BRAIN
zakelijk: bert.boerland@dop.nu

prive: bert@boerland.com

http://twitter.com/bertboerland

http://nl.linkedin.com/in/bertb...
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Why Drupal Is So Slow
Upcoming SlideShare
Loading in...5
×

Why Drupal Is So Slow

6,788

Published on

A short intro in to the chain of performance for PHP/Drupal websites

Published in: Technology, News & Politics
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
6,788
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
85
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Transcript of "Why Drupal Is So Slow"

  1. 1. Why Drupal is so SLOW ...?!!!
  2. 2. Why Drupal is so SLOW ...?!!!
  3. 3. • long term drupal user (2001)
  4. 4. • long term drupal user (2001) • schenker domain d.o
  5. 5. • long term drupal user (2001) • schenker domain d.o • Permanent Member Drupal Association
  6. 6. • long term drupal user (2001) • schenker domain d.o • Permanent Member Drupal Association • bertboerland op elk sociaal netwerk (hint: @bertboerland op twitter :-)
  7. 7. • long term drupal user (2001) • schenker domain d.o • Permanent Member Drupal Association • bertboerland op elk sociaal netwerk (hint: @bertboerland op twitter :-) • werkzaam DOP (“we are hiring”)
  8. 8. “Thank you #ATOS for hosting the #phpbnl meeting”
  9. 9. • Hashtag #phpbnl
  10. 10. • Hashtag #phpbnl • Subhastag @bertboerland #fail :-)
  11. 11. • Wie heeft Drupal geïnstalleerd?
  12. 12. • Wie heeft Drupal geïnstalleerd? • Wie heeft high volume PHP websites gebouwd?
  13. 13. • Wie heeft Drupal geïnstalleerd? • Wie heeft high volume PHP websites gebouwd? • Wie heeft high volume Drupal websites gebouwd?
  14. 14. • Wie heeft Drupal geïnstalleerd? • Wie heeft high volume PHP websites gebouwd? • Wie heeft high volume Drupal websites gebouwd? • Wie is ooit tegen Drupal performance aangelopen?
  15. 15. • Google: +0,4 seconde = -0,6% verkeer
  16. 16. • Google: +0,4 seconde = -0,6% verkeer • Yahoo! +0,4 seconde = -7% verkeer
  17. 17. • Google: +0,4 seconde = -0,6% verkeer • Yahoo! +0,4 seconde = -7% verkeer • Bing: -2 seconde = +4% verkeer
  18. 18. • Google: +0,4 seconde = -0,6% verkeer • Yahoo! +0,4 seconde = -7% verkeer • Bing: -2 seconde = +4% verkeer • Shopzilla: -5 seconde = +12% omzet, 50% minder bandbreedte
  19. 19. • Google: +0,4 seconde = -0,6% verkeer • Yahoo! +0,4 seconde = -7% verkeer • Bing: -2 seconde = +4% verkeer • Shopzilla: -5 seconde = +12% omzet, 50% minder bandbreedte
  20. 20. • Google: +0,4 seconde = -0,6% verkeer • Yahoo! +0,4 seconde = -7% verkeer • Bing: -2 seconde = +4% verkeer • Shopzilla: -5 seconde = +12% omzet, 50% minder bandbreedte • Sneller = beter UX, meer verkeer, meer omzet, minder kosten!
  21. 21. • Keten
  22. 22. • Keten • Drupal
  23. 23. • Keten • Drupal • Proces
  24. 24. • NCRV.nl en RNW.nl • Honderduizendenden hits per dag, Tienduizend artikelen per maand
  25. 25. • RNW.nl
  26. 26. user > browser > network > site
  27. 27. user > browser > network > site
  28. 28. user > browser > network > site
  29. 29. • Juiste gestructureerde informatie verkrijgen; “het is langzaam” vs tijd, browser, actie, URL etc...
  30. 30. • Juiste gestructureerde informatie verkrijgen; “het is langzaam” vs tijd, browser, actie, URL etc... • Redacteur stemt niet met zijn voeten.
  31. 31. • Juiste gestructureerde informatie verkrijgen; “het is langzaam” vs tijd, browser, actie, URL etc... • Redacteur stemt niet met zijn voeten. • Ingelogd of niet?
  32. 32. • Juiste gestructureerde informatie verkrijgen; “het is langzaam” vs tijd, browser, actie, URL etc... • Redacteur stemt niet met zijn voeten. • Ingelogd of niet?
  33. 33. • Juiste gestructureerde informatie verkrijgen; “het is langzaam” vs tijd, browser, actie, URL etc... • Redacteur stemt niet met zijn voeten. • Ingelogd of niet?
  34. 34. • Progressive rendering (HTML en plaatjes)
  35. 35. • Progressive rendering (HTML en plaatjes) • Externe Javascript (extern domain als CDN)
  36. 36. • Progressive rendering (HTML en plaatjes) • Externe Javascript (extern domain als CDN) • CSS Sprites
  37. 37. • Progressive rendering (HTML en plaatjes) • Externe Javascript (extern domain als CDN) • CSS Sprites • Reduce DNS lookups (Google analytics, online AJAX scripts as a service)
  38. 38. • Progressive rendering (HTML en plaatjes) • Externe Javascript (extern domain als CDN) • CSS Sprites • Reduce DNS lookups (Google analytics, online AJAX scripts as a service) • ....
  39. 39. • Progressive rendering (HTML en plaatjes) • Externe Javascript (extern domain als CDN) • CSS Sprites • Reduce DNS lookups (Google analytics, online AJAX scripts as a service) • ....
  40. 40. Tools:
  41. 41. Tools: • YSlow
  42. 42. Tools: • YSlow • JSLint
  43. 43. Tools: • YSlow • JSLint • NET
  44. 44. Tools: • YSlow • JSLint • NET • CSS Sprite generatoren
  45. 45. Tools: • YSlow • JSLint • NET • CSS Sprite generatoren • HTML, CSS, RSS validatie
  46. 46. Tools: • YSlow • JSLint • NET • CSS Sprite generatoren • HTML, CSS, RSS validatie
  47. 47. • Asymetrische routering is een feit (en niet te zien!)
  48. 48. • Asymetrische routering is een feit (en niet te zien!) • BGP is niet voor watjes
  49. 49. • Asymetrische routering is een feit (en niet te zien!) • BGP is niet voor watjes • Bandbreedte meet je niet in Mbps (“it’s the latency stupid!”)
  50. 50. • Asymetrische routering is een feit (en niet te zien!) • BGP is niet voor watjes • Bandbreedte meet je niet in Mbps (“it’s the latency stupid!”) • Locatie maakt uit (100ms roundtrip normaal)
  51. 51. • Asymetrische routering is een feit (en niet te zien!) • BGP is niet voor watjes • Bandbreedte meet je niet in Mbps (“it’s the latency stupid!”) • Locatie maakt uit (100ms roundtrip normaal) • Gebruik CDN pas als het een oplossing is (duur, ingewikkeld, USA centric)
  52. 52. Tools
  53. 53. Tools • AS Looking glasses
  54. 54. Tools • AS Looking glasses • MTR
  55. 55. Tools • AS Looking glasses • MTR
  56. 56. • Doe maar geen Source / Destiantie hash op je loadbalancers :-)
  57. 57. • Doe maar geen Source / Destiantie hash op je loadbalancers :-) • Least connections kan beste zijn
  58. 58. • Doe maar geen Source / Destiantie hash op je loadbalancers :-) • Least connections kan beste zijn • Route static direct naar andere webserver phpworkers voor echte werk.
  59. 59. • Doe maar geen Source / Destiantie hash op je loadbalancers :-) • Least connections kan beste zijn • Route static direct naar andere webserver phpworkers voor echte werk. • lighttp is een betere vriend dan Apache
  60. 60. • Doe maar geen Source / Destiantie hash op je loadbalancers :-) • Least connections kan beste zijn • Route static direct naar andere webserver phpworkers voor echte werk. • lighttp is een betere vriend dan Apache • Varnish is een veeeel betere vriend dan Squid
  61. 61. • Doe maar geen Source / Destiantie hash op je loadbalancers :-) • Least connections kan beste zijn • Route static direct naar andere webserver phpworkers voor echte werk. • lighttp is een betere vriend dan Apache • Varnish is een veeeel betere vriend dan Squid • Filesysteem kan al uitmaken, inodes, swapspace, netwerkkaarten...
  62. 62. • Doe maar geen Source / Destiantie hash op je loadbalancers :-) • Least connections kan beste zijn • Route static direct naar andere webserver phpworkers voor echte werk. • lighttp is een betere vriend dan Apache • Varnish is een veeeel betere vriend dan Squid • Filesysteem kan al uitmaken, inodes, swapspace, netwerkkaarten...
  63. 63. • Apache tunen is een kunst, PHP tunen is een martial art
  64. 64. • Apache tunen is een kunst, PHP tunen is een martial art • PHP 16 MB is niets, 128 bijna norm (modules vreten geheugen)
  65. 65. • Apache tunen is een kunst, PHP tunen is een martial art • PHP 16 MB is niets, 128 bijna norm (modules vreten geheugen) • Keepalive en pipelining helpen (HTTP/1.1)
  66. 66. • Apache tunen is een kunst, PHP tunen is een martial art • PHP 16 MB is niets, 128 bijna norm (modules vreten geheugen) • Keepalive en pipelining helpen (HTTP/1.1) • Filesysteem (hdparm) optimaliseren
  67. 67. • Apache tunen is een kunst, PHP tunen is een martial art • PHP 16 MB is niets, 128 bijna norm (modules vreten geheugen) • Keepalive en pipelining helpen (HTTP/1.1) • Filesysteem (hdparm) optimaliseren • Log enkel in error reporting wat je nodig hebt
  68. 68. • Apache tunen is een kunst, PHP tunen is een martial art • PHP 16 MB is niets, 128 bijna norm (modules vreten geheugen) • Keepalive en pipelining helpen (HTTP/1.1) • Filesysteem (hdparm) optimaliseren • Log enkel in error reporting wat je nodig hebt • Gzip pages op webserver, niet door Drupal :-)
  69. 69. • Apache tunen is een kunst, PHP tunen is een martial art • PHP 16 MB is niets, 128 bijna norm (modules vreten geheugen) • Keepalive en pipelining helpen (HTTP/1.1) • Filesysteem (hdparm) optimaliseren • Log enkel in error reporting wat je nodig hebt • Gzip pages op webserver, niet door Drupal :-) • Schrijf logging naar raw sockets naar syslog server
  70. 70. • Do use opcode cachers! (APC)
  71. 71. • Do use opcode cachers! (APC)
  72. 72. • Do use opcode cachers! (APC)
  73. 73. • Do use opcode cachers! (APC)
  74. 74. • Do use opcode cachers! (APC)
  75. 75. • Standaard caching in database
  76. 76. • Standaard caching in database • Helemaal aan het einde van de keten
  77. 77. • Standaard caching in database • Helemaal aan het einde van de keten • Beter dan niets
  78. 78. • Standaard caching in database • Helemaal aan het einde van de keten • Beter dan niets • Daar is alles mee gezegd...
  79. 79. • Standaard module
  80. 80. • Standaard module • “Bijna geen issues”
  81. 81. • Standaard module • “Bijna geen issues” • Alle anon bezoek cachen
  82. 82. • Standaard module • “Bijna geen issues” • Alle anon bezoek cachen • Hit rate vaak rond 90%
  83. 83. • Standaard module • “Bijna geen issues” • Alle anon bezoek cachen • Hit rate vaak rond 90% • Load database
  84. 84. • Standaard module • “Bijna geen issues” • Alle anon bezoek cachen • Hit rate vaak rond 90% • Load database • Installatie 2 uur max
  85. 85. • Standaard module
  86. 86. • Standaard module • Database 1,5 GB waarvan 800MB search
  87. 87. • Standaard module • Database 1,5 GB waarvan 800MB search • Geen spider (W.I.P)
  88. 88. • Standaard module • Database 1,5 GB waarvan 800MB search • Geen spider (W.I.P) • Standaard search geeft veel Slow Queries
  89. 89. • Standaard module • Database 1,5 GB waarvan 800MB search • Geen spider (W.I.P) • Standaard search geeft veel Slow Queries • Search niet meer ‘echt’ geupdate sinds 4.7
  90. 90. • Standaard module • Database 1,5 GB waarvan 800MB search • Geen spider (W.I.P) • Standaard search geeft veel Slow Queries • Search niet meer ‘echt’ geupdate sinds 4.7 • Veel betere stemming, AJAX, extensies
  91. 91. • Standaard module • Database 1,5 GB waarvan 800MB search • Geen spider (W.I.P) • Standaard search geeft veel Slow Queries • Search niet meer ‘echt’ geupdate sinds 4.7 • Veel betere stemming, AJAX, extensies • het blijft Java :-)
  92. 92. • Ook als service te “koop”
  93. 93. • Ook als service te “koop” • Autocomplete modules
  94. 94. • Ook als service te “koop” • Autocomplete modules • Faceted search modules
  95. 95. • Ook als service te “koop” • Autocomplete modules • Faceted search modules • CCK integration
  96. 96. • Ook als service te “koop” • Autocomplete modules • Faceted search modules • CCK integration • Views integration
  97. 97. • Ook als service te “koop” • Autocomplete modules • Faceted search modules • CCK integration • Views integration • UTF8
  98. 98. • Ook als service te “koop” • Autocomplete modules • Faceted search modules • CCK integration • Views integration • UTF8 • Bloedsnel
  99. 99. • Redelijk goed te doen
  100. 100. • Redelijk goed te doen • Start met MySQLAdmin
  101. 101. • Redelijk goed te doen • Start met MySQLAdmin • MySQLOptimize is symptoom bestrijding (but so is duckttape)
  102. 102. • Redelijk goed te doen • Start met MySQLAdmin • MySQLOptimize is symptoom bestrijding (but so is duckttape) • Persistent db connecties
  103. 103. • Redelijk goed te doen • Start met MySQLAdmin • MySQLOptimize is symptoom bestrijding (but so is duckttape) • Persistent db connecties • InnoDb beats MyIsam (but not always)
  104. 104. • Redelijk goed te doen • Start met MySQLAdmin • MySQLOptimize is symptoom bestrijding (but so is duckttape) • Persistent db connecties • InnoDb beats MyIsam (but not always) • Elke my.cnf is specifiek
  105. 105. • Redelijk goed te doen • Start met MySQLAdmin • MySQLOptimize is symptoom bestrijding (but so is duckttape) • Persistent db connecties • InnoDb beats MyIsam (but not always) • Elke my.cnf is specifiek • Kijk naar andere databases
  106. 106. • Javascript aggregatie
  107. 107. • Javascript aggregatie • CSS aggregatie
  108. 108. • Javascript aggregatie • CSS aggregatie • Logging uit of naar syslog
  109. 109. • Javascript aggregatie • CSS aggregatie • Logging uit of naar syslog • Caching normaal 5 minuten (block cache als mogelijk)
  110. 110. • Javascript aggregatie • CSS aggregatie • Logging uit of naar syslog • Caching normaal 5 minuten (block cache als mogelijk) • cron.php 5 minuten
  111. 111. • Javascript aggregatie • CSS aggregatie • Logging uit of naar syslog • Caching normaal 5 minuten (block cache als mogelijk) • cron.php 5 minuten • Anti spam dienst als Captcha of mollom
  112. 112. • Javascript aggregatie • CSS aggregatie • Logging uit of naar syslog • Caching normaal 5 minuten (block cache als mogelijk) • cron.php 5 minuten • Anti spam dienst als Captcha of mollom • XML sitemap en Google news views
  113. 113. • Javascript aggregatie • CSS aggregatie • Logging uit of naar syslog • Caching normaal 5 minuten (block cache als mogelijk) • cron.php 5 minuten • Anti spam dienst als Captcha of mollom • XML sitemap en Google news views • Devel uit :-)
  114. 114. • SOLR/Memcache
  115. 115. • SOLR/Memcache • Boost
  116. 116. • SOLR/Memcache • Boost • Cacherouter
  117. 117. • SOLR/Memcache • Boost • Cacherouter • Block caching
  118. 118. • SOLR/Memcache • Boost • Cacherouter • Block caching
  119. 119. • SOLR/Memcache • Boost • Cacherouter • Block caching • DOP: views optimalisatie
  120. 120. • SOLR/Memcache • Boost • Cacherouter • Block caching • DOP: views optimalisatie
  121. 121. http://groups.drupal.org/node/25617
  122. 122. • Groups http://groups.drupal.org/high-performance
  123. 123. • Groups http://groups.drupal.org/high-performance • Drupal Handbook http://drupal.org/node/326504
  124. 124. • Groups http://groups.drupal.org/high-performance • Drupal Handbook http://drupal.org/node/326504 • Drupal Modules http://drupal.org/project/modules?filters=tid:123
  125. 125. • Groups http://groups.drupal.org/high-performance • Drupal Handbook http://drupal.org/node/326504 • Drupal Modules http://drupal.org/project/modules?filters=tid:123 • 2Bits heerst! http://2bits.com/articles/drupal-performance-tuning-and- optimization-for-large-web-sites.html
  126. 126. Use real data!
  127. 127. Verander een ding ter gelijke tijd
  128. 128. Sluit niets uit, Denk buiten de doos!
  129. 129. Geen twee trajecten zijn het zelfde!
  130. 130. Verleidelijk om op laureren te rusten als is opgelost... ... maar het is nooit opgelost
  131. 131. • ab / jmeter • develop module • Yslow • PHP logging • MyTop • Explain • BRAIN
  132. 132. zakelijk: bert.boerland@dop.nu prive: bert@boerland.com http://twitter.com/bertboerland http://nl.linkedin.com/in/bertboerland
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×