Slide 1

Slide 1 text

Run, Content, run!

Slide 2

Slide 2 text

Markus Heurung @muhh Co-Founder and Web operations lead of freistil IT freistilbox.com

Slide 3

Slide 3 text

What’s high performance?

Slide 4

Slide 4 text

It's about the speed.

Slide 5

Slide 5 text

anonymous vs. authenticated static vs. generated

Slide 6

Slide 6 text

What's to optimise? Browser PHP Drupal Webserver Filesystem Database

Slide 7

Slide 7 text

Static files

Slide 8

Slide 8 text

Tuning Linux Fast disks File system cache File system layout

Slide 9

Slide 9 text

Tuning Apache MaxClients & Co. KeepAlive Scaling out

Slide 10

Slide 10 text

Drupal

Slide 11

Slide 11 text

Tuning PHP Get many CPU cores Use an opcode cache (APC) • Check apc.php • 128-256 MB

Slide 12

Slide 12 text

Drupal Database for almost everything: • Content • Configuration • Content queries and layout • Caches • Watchdog (logs)

Slide 13

Slide 13 text

Configure Drupal Compression CSS & JS aggregation Caching Watchdog into syslog into logstash

Slide 14

Slide 14 text

Choose your modules wisely!

Slide 15

Slide 15 text

Optimise your database queries

Slide 16

Slide 16 text

views queries, too

Slide 17

Slide 17 text

MySQL Disk I/O InnoDB Buffers (caches, temp tables)

Slide 18

Slide 18 text

use less DB

Slide 19

Slide 19 text

Cache → memcached

Slide 20

Slide 20 text

Search → Apache Solr

Slide 21

Slide 21 text

Content → MongoDB

Slide 22

Slide 22 text

No content

Slide 23

Slide 23 text

Varnish

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

No content

Slide 26

Slide 26 text

Tuning Varnish Modules: • Purge, Expire, Rules • Varnish Optimise VCL logic

Slide 27

Slide 27 text

1 1 https://www.flickr.com/photos/kimberlykv/5061421858

Slide 28

Slide 28 text

monitor & measure

Slide 29

Slide 29 text

Thanks! Questions? [email protected]