Drupal Performance and Scaling
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
2,492
On Slideshare
2,430
From Embeds
62
Number of Embeds
2

Actions

Shares
Downloads
16
Comments
0
Likes
2

Embeds 62

http://localhost 58
http://www.linkedin.com 4

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Agenda● About Kite Systems and myself● Performance● Caching● Scaling● Optimizing
  • 2. Kite Systems is an Agile development house which means the client is actively involved all the way through the development process. We build high quality, secure platforms using Java J2EE, Microsoft .NET, Ruby on Rails, PHP and Python.
  • 3. Join Us
  • 4. About myself, Gerald Villorente● Web Developer/themer at Kite Systems Inc.● Drupal developer since 2010● Drupal PH kids mentor
  • 5. Why Drupal is Slow?
  • 6. Performance● Short response time (milliseconds per page)● High throughput (rate of processing work, e.g. page per second)● Low utilization of computing resources (CPU, memory, disk, network)
  • 7. Our Objectives● Improving system performance from what it is at present● Faster response to the end user per page● Handle more page views● Minimize downtime
  • 8. ● Each objective is different, but they can be related● Everyone wants them, but not willing to PAY!
  • 9. Why Drupal is slow?
  • 10. Why Drupal is slow?● Drupal is not really slow at all
  • 11. Why Drupal is slow?● Drupal is not really slow at all● Server (web server, SQL server)
  • 12. Why Drupal is slow?● Drupal is not really slow at all● Server (web server, SQL server)● Drupal (caching, aggregations, modules, 404)
  • 13. Why Drupal is slow?● Drupal is not really slow at all● Server (web server, SQL server)● Drupal (caching, aggregations, modules, 404)● Hardware (memory, CPU) - Shared hosting - Dedicated/VPS - Local Development Environment
  • 14. Server: Optimization● Benchmarking Apache with ab ab -n 500 -c 50 http://mydomain.com/index.php Rule of Thumb: Allocate 50% of the available physical memory to Apache. So, 250M / 20M per process = 12 httpd processes maximum.
  • 15. Load Average
  • 16. Demo of Drupal Modules
  • 17. Caching● Varnish● Memcache● Boost● Drupal Internal Caching
  • 18. Cache Storage
  • 19. Varnish Varnish is an HTTP accelerator designed for content-heavy dynamic web sites. In contrast to other HTTP accelerators, such as Squid, which began life as a client-side cache, or Apache and nginx, which are primarily origin servers, Varnish was designed as an HTTP accelerator.
  • 20. Varnish
  • 21. APC The Alternative PHP Cache (APC) is a free and open opcode cache for PHP. Its goal is to provide a free, open, and robust framework for caching and optimizing PHP intermediate code.
  • 22. APC
  • 23. APC
  • 24. Memcache Free & open source, high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load.
  • 25. Memcache
  • 26. Boost Boost provides static page caching for Drupal enabling a very significant performance and scalability boost for sites that receive mostly anonymous traffic .
  • 27. Boost
  • 28. Scaling● Load balancer● Database Cluster