Download - Drupal - it all comes down to performance
![Page 1: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/1.jpg)
DrupalCamps 2012
Drupal it all comes down to performance
Janis Janovskis
@PASSIVUS
http://passivemanagement.net
![Page 2: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/2.jpg)
Drupalit all comes down to performance
?
![Page 3: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/3.jpg)
Drupalit all comes down to performance
WHY?
WHERE?
HOW?
:)
![Page 4: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/4.jpg)
Drupalit all comes down to performance
Database level – wt … is cache?✔ cache_block✔ cache_bootstrap✔ cache_field✔ cache_form✔ cache_.....
![Page 5: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/5.jpg)
Drupalit all comes down to performance
Database → cache_your_???();✔ cache_set✔ cache_get✔ ctools_include('object-cache');✔ ctools_object_cache_set('my_module', $id,
$object);✔ ctools_include('object-cache');✔ ctools_object_cache_clear('my_module', $id);
![Page 6: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/6.jpg)
Drupalit all comes down to performance
Database → caching();✔ Query caching – query_cache_type=1✔ table caching – memcache✔ noSQL
➔ MongoDB➔ CouchDB➔ Reddis➔ ….
![Page 7: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/7.jpg)
Drupalit all comes down to performance
PHP✔ APC✔ XCACHE✔ Remove redundant modules(code)✔ Profiling (Xhprof)
![Page 8: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/8.jpg)
Drupalit all comes down to performance
PHP - Modules✔ entity_cache✔ boost (best on shared environments)✔ block_cache_alter✔ memcache api integration✔ apc integration✔ elysia cron (better cron job management)✔ ajax blocks
![Page 9: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/9.jpg)
Drupalit all comes down to performance
Drupalit all comes down to performance
Filesystem - backendFilesystem - backend✔ File size limitations (file field configurationFile size limitations (file field configuration✔ aggregate cssaggregate css✔ aggregate jsaggregate js✔ remove redundant css/jsremove redundant css/js✔ cdncdn
![Page 10: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/10.jpg)
Drupalit all comes down to performance
Files –> front end();✔ Build in css/js architecture (“clearfix”)✔ Built in js framework (jQuery, + jQuery UI(D7✔ Image preloads
ADMIN
THEMETHEME
CONTENT
MODULE
![Page 11: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/11.jpg)
Drupalit all comes down to performance
Performance → Web servers();✔ Load balancing✔ Apache mod_proxy✔ Ningx vs Apache✔ Varnish proxy caching
![Page 12: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/12.jpg)
Drupalit all comes down to performance
TESTING YOUR BUILT
✔ DrupalWebTestCase✔ devel module → query information✔ views statistics✔ performance tests(jmeter)
![Page 13: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/13.jpg)
Drupalit all comes down to performance
www.bounty.com✔ ~1.5 milj. users✔ Affiliate marketing solutions✔ Embed community✔ “Crapped” (not fresh) backend✔ Almost no documentation✔ Offline db integration
![Page 14: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/14.jpg)
![Page 15: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/15.jpg)
Drupalit all comes down to performance
Architecture
LOAD BALANCER
APACHE2
APACHE1 MEMCACHE1
MEMCACHE1
MYSQLFILE SERVERMYSQLMYSQLMYSQL
![Page 16: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/16.jpg)
Drupalit all comes down to performance
Bounty → Improvements();✔ No panels✔ Block instances✔ By, by boot :)✔ Education – tutoring✔ Micro-sites✔ Code improvements(Documentation)✔ Removing redundancies (profile module)
![Page 17: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/17.jpg)
![Page 18: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/18.jpg)
Drupalit all comes down to performance
www.savethechildren.org.uk✔ 25 editors✔ UI friendly configuration
➔ Panels➔ Context➔ Views➔ Pages
![Page 19: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/19.jpg)
Drupalit all comes down to performance
Architecture
LOAD BALANCER
MYSQL
varnish1
varnish1
apache1
apache2
memcache1
memcache2
MYSQLMYSQL
files
![Page 20: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/20.jpg)
Drupalit all comes down to performance
Save the Children → improvements();✔ Memcache✔ Profiling with xhprof, devel✔ Contributing to community✔ Education✔ … I am still on this role …..
![Page 21: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/21.jpg)
Drupalit all comes down to performance
Improvements → personal();✔ Analysing✔ Contributing✔ Training✔ Sharing
![Page 22: Drupal - it all comes down to performance](https://reader033.vdocuments.us/reader033/viewer/2022060108/554f92c3b4c9052a518b5487/html5/thumbnails/22.jpg)
Drupalit all comes down to performance
Thanks
http://passivemanagement.net
@PASSIVUS