SlideShare a Scribd company logo
1 of 28
Download to read offline
Ladezeit Extreme – Was
funktioniert bei Contao, Joomla &
Wordpress
Alexander Merkel
Über mich




                         §  Seit 2007 – Selbständig als Freelancer für
                             SEO, Linkbuilding und Redesign Projekte.

                         §  Seit 2010 als Online Marketing Consultant bei
                             verschiedenen Unternehmen tätig.

                         §  2012 – Bachelor of Science: Electronic
                             Business

             SEO-HN.DE




Seite § 2
Agenda



   1         Die Basis das muss euer Server können!


   2         Contao


   3         Joomla on Speed


   4         Das beste kommt zum Schluss - Wordpress




Seite § 3
Apache Module 1/2

  §  Mod_Headers:                     §  Mod_Mime
       §  Kann HTTP Requests &             §  Erlaubt das assozieren von
           Response Headers                     bestimmten Dateitypen und
           verändern.                           Inhalten

  §  Mod_Expires                      §  Mod_env
       §  Ermöglicht das                   §  Kontrolliert bestimmte
           kontrollieren von Caching            Umgebungen
           indem festgelegt wird
           wann ein Inhalt neu         §  Mod_Setenvif:
           geladen wird.                    §  Erlaubt Regeln für
                                                bestimmte Aktionen
  §  Mod_Deflate
       §  Erlaubt das Komprimieren    §  Mod_Pagespeed
           von Inhalten bevor Sie           §  Ermöglicht automatisierte
           zum Nutzer gesendet                  Funktionen zur
           werden.                              Verbesserung der Ladezeit
Seite § 4
Apache Module 2/2
 # compress text, html, javascript, css, xml:                  # Set up 2 Hour caching on commonly updated files
 AddOutputFilterByType DEFLATE text/plain                      <FilesMatch ".(xml|txt|html|js|css)$">
 AddOutputFilterByType DEFLATE text/html                       ExpiresDefault A604800
 AddOutputFilterByType DEFLATE text/xml                        Header append Cache-Control "proxy-revalidate"
 AddOutputFilterByType DEFLATE text/css                        </FilesMatch>
 AddOutputFilterByType DEFLATE application/xml
 AddOutputFilterByType DEFLATE application/xhtml+xml           # Force no caching for dynamic files
 AddOutputFilterByType DEFLATE application/rss+xml             <FilesMatch ".(php|cgi|pl|htm)$">
 AddOutputFilterByType DEFLATE application/javascript          ExpiresActive Off
 AddOutputFilterByType DEFLATE application/x-javascript        Header set Cache-Control "private, no-cache, no-store, proxy-revalidate,
                                                               no-transform"
 # Or, compress certain file types by extension:               Header set Pragma "no-cache"
 <Files *.html>                                                </FilesMatch>
 SetOutputFilter DEFLATE                                       </IfModule>
 </Files>
 <IfModule mod_expires.c>                                      ExpiresActive On

 # Turn on Expires and set default to 0                        # Expires after a month client accesses the file
 ExpiresActive On                                              ExpiresByType image/jpeg A2592000
 ExpiresDefault A0                                             ExpiresByType image/gif A2592000
                                                               ExpiresByType image/png A2592000
 # Set up caching on media files for 1 year (forever?)         ExpiresByType image/x-icon A2592000
 <FilesMatch ".(flv|ico|pdf|avi|mov|ppt|doc|mp3|wmv|wav)$">   ExpiresByType text/plain A2592000
 ExpiresDefault A29030400
 Header append Cache-Control "public"                          # Good for one week
 </FilesMatch>                                                 ExpiresByType application/x-javascript M604800
                                                               ExpiresByType text/css A2592000
 # Set up caching on media files for 1 week                    ExpiresByType text/html A2592000
 <FilesMatch ".(gif|jpg|jpeg|png|swf)$">
 ExpiresDefault A604800
 Header append Cache-Control "public"
 </FilesMatch>
Seite § 5
Mod PageSpeed sollte gut konfiguriert werden!

Funktionen:

§     Inline CSS/JS
§     Outline CSS/JS
§     Combine CSS/JS
§     Compress HTML/CSS/JS

§  Compress Images
§  Rewrite Images
§  Sprite Images
§  Konvertiert GIF/JPEG/PNG
    komprimiertere Formate
§  uvm.

§  Einfach Testen lohnt sich!!!


Seite § 6
Erweiterungen des Servers 1/2

  MemCached Server:
  §  Funktion: Vorhaltung von wichtigen Daten
      im Arbeitsspeicher damit
      Festplattenzugriffe erübrigt werden
      beziehungsweise der Aufruf von (relativ)
      aufwändigen und häufig verwendeten
      Datenbankabfragen minimiert wird.

  §  Installation: Sehr einfach auf Ubuntu und
      Debian Server. Einfach Admin/Hoster
      fragen dauert keine 30min

  §  Konfiguration ist easy wird von: Wordpress
      und Joomla unterstützt.




Seite § 7
                                       Bildquelle: http://www.sxc.hu/photo/203793
Erweiterung des Server 2/2



  Advanced PHP Cache:

  §  Übersetzt PHP in Bytecode

  §  Kann auch im Speicher
      abgelegt werden wodurch die
      Performance noch besser wird.




Seite § 8
Content Delivery Networks




§  Content Delivery Network ist ein Netz lokal verteilter und über das
    Internet verbundener Server
§  Die Knoten sind auf viele Orte verteilt und oft auch auf viele Backbones.
    Sie arbeiten zusammen, um Anfragen von Nutzern nach Inhalten zu
    bedienen.
http://de.wikipedia.org/wiki/Content_Distribution_Network

Bildquelle: http://anangpratika.files.wordpress.com/2011/06/cdns.jpg

Seite § 9
CDN Anbieter
§  Amazon CloudFront:               §  Achtet aber darauf wo die Server
     §  http://aws.amazon.com/de/       vom Anbieter stehen
         cloudfront/
                                     §  Es bringt nicht sehr viel wenn der
§  Contendo(Akamai):                    Anbieter günstig ist aber keine
     §  http://www.akamai.com/          Server in Europa stehen hat.
         cotendo

§  Media Temple ProCDN:
     §  http://mediatemple.net/
         webhosting/procdn/

§  NetDNA MaxCDN
     §  http://www.maxcdn.com/




Seite § 10
Vorsicht CDN

                                     §  CDN lässt keine automatisierte
                                         Kombination der JavaScript & CSS
                                         Dateien zu. Hier muss getestet werden
                                         was schneller ist.

                                     §  Bei Websites mit vielen Nutzer würde ich
                                         aber CDN immer den Vorzug geben.

                                     §  Bei wenig alles auf APC & Memcache
   Bildquelle:
   http://www.sxc.hu/photo/1334670
                                         setzen.




Seite § 11
Seite § 12
Vorher




Seite § 13
Nachher




              +20%




Seite § 14
Was wurde gemacht?


§  Internes Caching in Contao aktiviert




§  Mod_Pagespeed mit diesen Filtern erweitert:
   §  Combine JS und CSS -> Kombiniert JS und CSS in wenige Dateien
   §  Rewrite CSS und JS ->minimiert die URL‘s
   §  Recompress Images -> Wandelt Bilder in PNG oder JPEG um.
   §  Sprite Images -> Wandelt Hintergrundbilder im CSS Code zu Sprites
       um

Seite § 15
Seite § 16
Vorher




Seite § 17
Nachher



              +208%




Seite § 18
Was wurde gemacht?


§  Installation von APC




§  Installation Mod_Pagespeed mit folgenden Filtern:
   §  Combine JS und CSS -> Kombiniert JS und CSS in wenige Dateien
   §  Rewrite CSS und JS ->minimiert die URL‘s
   §  Recompress Images -> Wandelt Bilder in PNG oder JPEG um.
   §  Sprite Images -> Wandelt Hintergrundbilder im CSS Code zu Sprites um




Seite § 19
Seite § 20
Vorher




Seite § 21
Nachher ohne CDN




                   +100%




Seite § 22
Was wurde gemacht?


§  Installation von Mod_Pagespeed
    mit folgenden Filtern:
   §  Inline/rewrite/outline/combine CSS
   §  Inline/rewrite/outline/combine JS
   §  Recompress/Rewrite/Sprite Images

§  Installation des Plugins W3 Total
    Cache
   §  Alle Funktionen auf verschiedene
       Memcache Server
   §  HTML/CSS Tidy installieren und
       konfigurieren




Seite § 23
Nachher mit CDN




                  +40%




Seite § 24
Warum CDN obwohl es doch langsamer ist?


§  Das gute an CDN man zahlt nur wenn es
    gebraucht wird!
§  Bei Seiten mit vielen Nutzern ist CDN eine
    gute Sache denn der Blog bleibt gleich
    schnell
§  Ohne CDN bricht irgendwann der Server
    zusammen!




Seite § 25
FAZIT


Seite § 26
Ladezeit-Optimierung auf dem CMS in wie weit möglich?


             Contao                Joomla                 Wordpress

  §  DiskCache       §  DiskCache          §  DiskCache
  §  Mod_PageSpeed   §  APC                §  APC
                      §  MEMCACHE <-Buggy   §  MEMCACHE
                      §  CDN                §  CDN
                      §  Minify             §  Minify
                      §  Mod_PagesSpeed     §  Mod_PageSpeed




Page § 27
Fragen

              Wenn etwas unklar war ist jetzt der
              Augenblick es zu ändern ;-)




Seite § 28

More Related Content

What's hot

WordPress Professional III
WordPress Professional IIIWordPress Professional III
WordPress Professional IIISebastian Blum
 
SDC2011: Web Performance Optimization
SDC2011: Web Performance OptimizationSDC2011: Web Performance Optimization
SDC2011: Web Performance OptimizationJakob
 
WordPress Professional II
WordPress Professional IIWordPress Professional II
WordPress Professional IISebastian Blum
 
WordPress Professional – SEO Campixx
WordPress Professional – SEO CampixxWordPress Professional – SEO Campixx
WordPress Professional – SEO CampixxSebastian Blum
 
2. Technologie-Tag - Frontend Architektur
2. Technologie-Tag - Frontend Architektur2. Technologie-Tag - Frontend Architektur
2. Technologie-Tag - Frontend ArchitekturNico Steiner
 
Web-Performance-Optimierung mit varnish
Web-Performance-Optimierung mit varnishWeb-Performance-Optimierung mit varnish
Web-Performance-Optimierung mit varnishSpeedPartner GmbH
 
Wordpress on steroids
Wordpress on steroidsWordpress on steroids
Wordpress on steroidsBlogwerk AG
 
Web-Performance-Optimierung mit varnish
Web-Performance-Optimierung mit varnishWeb-Performance-Optimierung mit varnish
Web-Performance-Optimierung mit varnishSpeedPartner GmbH
 
Performance Optimierung - Barrierefreiheit beginnt mit Ladezeiten
Performance Optimierung - Barrierefreiheit beginnt mit LadezeitenPerformance Optimierung - Barrierefreiheit beginnt mit Ladezeiten
Performance Optimierung - Barrierefreiheit beginnt mit LadezeitenDavid Maciejewski
 
HTML5 und node.js Grundlagen
HTML5 und node.js GrundlagenHTML5 und node.js Grundlagen
HTML5 und node.js GrundlagenMayflower GmbH
 
High Performance Multi-Server Magento in der Cloud
High Performance Multi-Server Magento in der CloudHigh Performance Multi-Server Magento in der Cloud
High Performance Multi-Server Magento in der CloudAOE
 
Crawl-Budget Optimierung - SEOday 2015
Crawl-Budget Optimierung - SEOday 2015Crawl-Budget Optimierung - SEOday 2015
Crawl-Budget Optimierung - SEOday 2015Bastian Grimm
 
Frontend Performance @ Hochschule der Medien Stuttgart
Frontend Performance @ Hochschule der Medien StuttgartFrontend Performance @ Hochschule der Medien Stuttgart
Frontend Performance @ Hochschule der Medien StuttgartJakob
 
Bidirektionale Verbindungen für Webanwendungen
Bidirektionale Verbindungen für WebanwendungenBidirektionale Verbindungen für Webanwendungen
Bidirektionale Verbindungen für WebanwendungenMarco Rico Gomez
 
SQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreiben
SQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreibenSQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreiben
SQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreibenJan Hentschel
 

What's hot (17)

WordPress Professional III
WordPress Professional IIIWordPress Professional III
WordPress Professional III
 
SDC2011: Web Performance Optimization
SDC2011: Web Performance OptimizationSDC2011: Web Performance Optimization
SDC2011: Web Performance Optimization
 
WordPress Professional II
WordPress Professional IIWordPress Professional II
WordPress Professional II
 
WordPress Professional – SEO Campixx
WordPress Professional – SEO CampixxWordPress Professional – SEO Campixx
WordPress Professional – SEO Campixx
 
2. Technologie-Tag - Frontend Architektur
2. Technologie-Tag - Frontend Architektur2. Technologie-Tag - Frontend Architektur
2. Technologie-Tag - Frontend Architektur
 
Web-Performance-Optimierung mit varnish
Web-Performance-Optimierung mit varnishWeb-Performance-Optimierung mit varnish
Web-Performance-Optimierung mit varnish
 
Wordpress Security
Wordpress SecurityWordpress Security
Wordpress Security
 
Wordpress on steroids
Wordpress on steroidsWordpress on steroids
Wordpress on steroids
 
Web-Performance-Optimierung mit varnish
Web-Performance-Optimierung mit varnishWeb-Performance-Optimierung mit varnish
Web-Performance-Optimierung mit varnish
 
Performance Optimierung - Barrierefreiheit beginnt mit Ladezeiten
Performance Optimierung - Barrierefreiheit beginnt mit LadezeitenPerformance Optimierung - Barrierefreiheit beginnt mit Ladezeiten
Performance Optimierung - Barrierefreiheit beginnt mit Ladezeiten
 
Dockerize It - Mit apex in die amazon cloud
Dockerize It - Mit apex in die amazon cloudDockerize It - Mit apex in die amazon cloud
Dockerize It - Mit apex in die amazon cloud
 
HTML5 und node.js Grundlagen
HTML5 und node.js GrundlagenHTML5 und node.js Grundlagen
HTML5 und node.js Grundlagen
 
High Performance Multi-Server Magento in der Cloud
High Performance Multi-Server Magento in der CloudHigh Performance Multi-Server Magento in der Cloud
High Performance Multi-Server Magento in der Cloud
 
Crawl-Budget Optimierung - SEOday 2015
Crawl-Budget Optimierung - SEOday 2015Crawl-Budget Optimierung - SEOday 2015
Crawl-Budget Optimierung - SEOday 2015
 
Frontend Performance @ Hochschule der Medien Stuttgart
Frontend Performance @ Hochschule der Medien StuttgartFrontend Performance @ Hochschule der Medien Stuttgart
Frontend Performance @ Hochschule der Medien Stuttgart
 
Bidirektionale Verbindungen für Webanwendungen
Bidirektionale Verbindungen für WebanwendungenBidirektionale Verbindungen für Webanwendungen
Bidirektionale Verbindungen für Webanwendungen
 
SQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreiben
SQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreibenSQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreiben
SQL Server auf Infrastructure-as-a-Services (IaaS) in der Cloud betreiben
 

Similar to Campixx 2012-ladezeit-extreme

Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratorenIcsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratorenICS User Group
 
Frontend-Architektur der 1&1 Bestellsysteme
Frontend-Architektur der 1&1 BestellsystemeFrontend-Architektur der 1&1 Bestellsysteme
Frontend-Architektur der 1&1 BestellsystemeNico Steiner
 
bccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-admins
bccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-adminsbccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-admins
bccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-adminsICS User Group
 
Site Speed EXTREME - SEOkomm 2014
Site Speed EXTREME - SEOkomm 2014Site Speed EXTREME - SEOkomm 2014
Site Speed EXTREME - SEOkomm 2014Bastian Grimm
 
Blogwerk WordPress für die Corporate Website
Blogwerk WordPress für die Corporate WebsiteBlogwerk WordPress für die Corporate Website
Blogwerk WordPress für die Corporate WebsiteBlogwerk AG
 
Performance Optimierung mit Mod_Pagespeed - WP Camp 2013
Performance Optimierung mit Mod_Pagespeed - WP Camp 2013Performance Optimierung mit Mod_Pagespeed - WP Camp 2013
Performance Optimierung mit Mod_Pagespeed - WP Camp 2013Bernhard Kau
 
Cloud Deployment und (Auto)Scaling am Beispiel von Angrybird
Cloud Deployment und (Auto)Scaling am Beispiel von AngrybirdCloud Deployment und (Auto)Scaling am Beispiel von Angrybird
Cloud Deployment und (Auto)Scaling am Beispiel von AngrybirdAOE
 
Meet Magento - High performance magento
Meet Magento - High performance magentoMeet Magento - High performance magento
Meet Magento - High performance magentoAOE
 
Website Speed mit CDN
Website Speed mit CDNWebsite Speed mit CDN
Website Speed mit CDNMariano Glas
 
Performance. Webmontag. Frankfurt.
Performance. Webmontag. Frankfurt.Performance. Webmontag. Frankfurt.
Performance. Webmontag. Frankfurt.Martin Kliehm
 
Frontend Performance
Frontend PerformanceFrontend Performance
Frontend PerformanceNico Steiner
 
Varnish PHP Unconference Hamburg 2012
Varnish PHP Unconference Hamburg 2012Varnish PHP Unconference Hamburg 2012
Varnish PHP Unconference Hamburg 2012Florian Holzhauer
 
Speedup your site mit Caching
Speedup your site mit CachingSpeedup your site mit Caching
Speedup your site mit Cachingwpmeetupka
 
HTML5-Performance: So rennt Ihre App und nicht Ihre Anwender (weg)
HTML5-Performance: So rennt Ihre App und nicht Ihre Anwender (weg)HTML5-Performance: So rennt Ihre App und nicht Ihre Anwender (weg)
HTML5-Performance: So rennt Ihre App und nicht Ihre Anwender (weg)André Krämer
 
Performance durch Caching
Performance durch CachingPerformance durch Caching
Performance durch CachingAOE
 
Schlanke Webarchitekturen nicht nur mit JSF 2 und CDI
Schlanke Webarchitekturen nicht nur mit JSF 2 und CDISchlanke Webarchitekturen nicht nur mit JSF 2 und CDI
Schlanke Webarchitekturen nicht nur mit JSF 2 und CDIadesso AG
 
High Performance Multi-Server Magento in der Cloud
High Performance Multi-Server Magento in der CloudHigh Performance Multi-Server Magento in der Cloud
High Performance Multi-Server Magento in der CloudAOE
 
Bitrix Site Manager v11.0 Presentation (de)
Bitrix Site Manager v11.0 Presentation (de)Bitrix Site Manager v11.0 Presentation (de)
Bitrix Site Manager v11.0 Presentation (de)Bitrix, Inc.
 
Von 0 auf 100 - Performance im Web
Von 0 auf 100 - Performance im WebVon 0 auf 100 - Performance im Web
Von 0 auf 100 - Performance im WebSebastian Springer
 

Similar to Campixx 2012-ladezeit-extreme (20)

Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratorenIcsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren
 
Frontend-Architektur der 1&1 Bestellsysteme
Frontend-Architektur der 1&1 BestellsystemeFrontend-Architektur der 1&1 Bestellsysteme
Frontend-Architektur der 1&1 Bestellsysteme
 
bccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-admins
bccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-adminsbccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-admins
bccon-2014 adm01 tipps-und-skripts-aus-dem-leben-eines-ibm-connections-admins
 
Site Speed EXTREME - SEOkomm 2014
Site Speed EXTREME - SEOkomm 2014Site Speed EXTREME - SEOkomm 2014
Site Speed EXTREME - SEOkomm 2014
 
Blogwerk WordPress für die Corporate Website
Blogwerk WordPress für die Corporate WebsiteBlogwerk WordPress für die Corporate Website
Blogwerk WordPress für die Corporate Website
 
Performance Optimierung mit Mod_Pagespeed - WP Camp 2013
Performance Optimierung mit Mod_Pagespeed - WP Camp 2013Performance Optimierung mit Mod_Pagespeed - WP Camp 2013
Performance Optimierung mit Mod_Pagespeed - WP Camp 2013
 
Cloud Deployment und (Auto)Scaling am Beispiel von Angrybird
Cloud Deployment und (Auto)Scaling am Beispiel von AngrybirdCloud Deployment und (Auto)Scaling am Beispiel von Angrybird
Cloud Deployment und (Auto)Scaling am Beispiel von Angrybird
 
Typo3 und Varnish
Typo3 und VarnishTypo3 und Varnish
Typo3 und Varnish
 
Meet Magento - High performance magento
Meet Magento - High performance magentoMeet Magento - High performance magento
Meet Magento - High performance magento
 
Website Speed mit CDN
Website Speed mit CDNWebsite Speed mit CDN
Website Speed mit CDN
 
Performance. Webmontag. Frankfurt.
Performance. Webmontag. Frankfurt.Performance. Webmontag. Frankfurt.
Performance. Webmontag. Frankfurt.
 
Frontend Performance
Frontend PerformanceFrontend Performance
Frontend Performance
 
Varnish PHP Unconference Hamburg 2012
Varnish PHP Unconference Hamburg 2012Varnish PHP Unconference Hamburg 2012
Varnish PHP Unconference Hamburg 2012
 
Speedup your site mit Caching
Speedup your site mit CachingSpeedup your site mit Caching
Speedup your site mit Caching
 
HTML5-Performance: So rennt Ihre App und nicht Ihre Anwender (weg)
HTML5-Performance: So rennt Ihre App und nicht Ihre Anwender (weg)HTML5-Performance: So rennt Ihre App und nicht Ihre Anwender (weg)
HTML5-Performance: So rennt Ihre App und nicht Ihre Anwender (weg)
 
Performance durch Caching
Performance durch CachingPerformance durch Caching
Performance durch Caching
 
Schlanke Webarchitekturen nicht nur mit JSF 2 und CDI
Schlanke Webarchitekturen nicht nur mit JSF 2 und CDISchlanke Webarchitekturen nicht nur mit JSF 2 und CDI
Schlanke Webarchitekturen nicht nur mit JSF 2 und CDI
 
High Performance Multi-Server Magento in der Cloud
High Performance Multi-Server Magento in der CloudHigh Performance Multi-Server Magento in der Cloud
High Performance Multi-Server Magento in der Cloud
 
Bitrix Site Manager v11.0 Presentation (de)
Bitrix Site Manager v11.0 Presentation (de)Bitrix Site Manager v11.0 Presentation (de)
Bitrix Site Manager v11.0 Presentation (de)
 
Von 0 auf 100 - Performance im Web
Von 0 auf 100 - Performance im WebVon 0 auf 100 - Performance im Web
Von 0 auf 100 - Performance im Web
 

Campixx 2012-ladezeit-extreme

  • 1. Ladezeit Extreme – Was funktioniert bei Contao, Joomla & Wordpress Alexander Merkel
  • 2. Über mich §  Seit 2007 – Selbständig als Freelancer für SEO, Linkbuilding und Redesign Projekte. §  Seit 2010 als Online Marketing Consultant bei verschiedenen Unternehmen tätig. §  2012 – Bachelor of Science: Electronic Business SEO-HN.DE Seite § 2
  • 3. Agenda 1 Die Basis das muss euer Server können! 2 Contao 3 Joomla on Speed 4 Das beste kommt zum Schluss - Wordpress Seite § 3
  • 4. Apache Module 1/2 §  Mod_Headers: §  Mod_Mime §  Kann HTTP Requests & §  Erlaubt das assozieren von Response Headers bestimmten Dateitypen und verändern. Inhalten §  Mod_Expires §  Mod_env §  Ermöglicht das §  Kontrolliert bestimmte kontrollieren von Caching Umgebungen indem festgelegt wird wann ein Inhalt neu §  Mod_Setenvif: geladen wird. §  Erlaubt Regeln für bestimmte Aktionen §  Mod_Deflate §  Erlaubt das Komprimieren §  Mod_Pagespeed von Inhalten bevor Sie §  Ermöglicht automatisierte zum Nutzer gesendet Funktionen zur werden. Verbesserung der Ladezeit Seite § 4
  • 5. Apache Module 2/2 # compress text, html, javascript, css, xml: # Set up 2 Hour caching on commonly updated files AddOutputFilterByType DEFLATE text/plain <FilesMatch ".(xml|txt|html|js|css)$"> AddOutputFilterByType DEFLATE text/html ExpiresDefault A604800 AddOutputFilterByType DEFLATE text/xml Header append Cache-Control "proxy-revalidate" AddOutputFilterByType DEFLATE text/css </FilesMatch> AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/xhtml+xml # Force no caching for dynamic files AddOutputFilterByType DEFLATE application/rss+xml <FilesMatch ".(php|cgi|pl|htm)$"> AddOutputFilterByType DEFLATE application/javascript ExpiresActive Off AddOutputFilterByType DEFLATE application/x-javascript Header set Cache-Control "private, no-cache, no-store, proxy-revalidate, no-transform" # Or, compress certain file types by extension: Header set Pragma "no-cache" <Files *.html> </FilesMatch> SetOutputFilter DEFLATE </IfModule> </Files> <IfModule mod_expires.c> ExpiresActive On # Turn on Expires and set default to 0 # Expires after a month client accesses the file ExpiresActive On ExpiresByType image/jpeg A2592000 ExpiresDefault A0 ExpiresByType image/gif A2592000 ExpiresByType image/png A2592000 # Set up caching on media files for 1 year (forever?) ExpiresByType image/x-icon A2592000 <FilesMatch ".(flv|ico|pdf|avi|mov|ppt|doc|mp3|wmv|wav)$"> ExpiresByType text/plain A2592000 ExpiresDefault A29030400 Header append Cache-Control "public" # Good for one week </FilesMatch> ExpiresByType application/x-javascript M604800 ExpiresByType text/css A2592000 # Set up caching on media files for 1 week ExpiresByType text/html A2592000 <FilesMatch ".(gif|jpg|jpeg|png|swf)$"> ExpiresDefault A604800 Header append Cache-Control "public" </FilesMatch> Seite § 5
  • 6. Mod PageSpeed sollte gut konfiguriert werden! Funktionen: §  Inline CSS/JS §  Outline CSS/JS §  Combine CSS/JS §  Compress HTML/CSS/JS §  Compress Images §  Rewrite Images §  Sprite Images §  Konvertiert GIF/JPEG/PNG komprimiertere Formate §  uvm. §  Einfach Testen lohnt sich!!! Seite § 6
  • 7. Erweiterungen des Servers 1/2 MemCached Server: §  Funktion: Vorhaltung von wichtigen Daten im Arbeitsspeicher damit Festplattenzugriffe erübrigt werden beziehungsweise der Aufruf von (relativ) aufwändigen und häufig verwendeten Datenbankabfragen minimiert wird. §  Installation: Sehr einfach auf Ubuntu und Debian Server. Einfach Admin/Hoster fragen dauert keine 30min §  Konfiguration ist easy wird von: Wordpress und Joomla unterstützt. Seite § 7 Bildquelle: http://www.sxc.hu/photo/203793
  • 8. Erweiterung des Server 2/2 Advanced PHP Cache: §  Übersetzt PHP in Bytecode §  Kann auch im Speicher abgelegt werden wodurch die Performance noch besser wird. Seite § 8
  • 9. Content Delivery Networks §  Content Delivery Network ist ein Netz lokal verteilter und über das Internet verbundener Server §  Die Knoten sind auf viele Orte verteilt und oft auch auf viele Backbones. Sie arbeiten zusammen, um Anfragen von Nutzern nach Inhalten zu bedienen. http://de.wikipedia.org/wiki/Content_Distribution_Network Bildquelle: http://anangpratika.files.wordpress.com/2011/06/cdns.jpg Seite § 9
  • 10. CDN Anbieter §  Amazon CloudFront: §  Achtet aber darauf wo die Server §  http://aws.amazon.com/de/ vom Anbieter stehen cloudfront/ §  Es bringt nicht sehr viel wenn der §  Contendo(Akamai): Anbieter günstig ist aber keine §  http://www.akamai.com/ Server in Europa stehen hat. cotendo §  Media Temple ProCDN: §  http://mediatemple.net/ webhosting/procdn/ §  NetDNA MaxCDN §  http://www.maxcdn.com/ Seite § 10
  • 11. Vorsicht CDN §  CDN lässt keine automatisierte Kombination der JavaScript & CSS Dateien zu. Hier muss getestet werden was schneller ist. §  Bei Websites mit vielen Nutzer würde ich aber CDN immer den Vorzug geben. §  Bei wenig alles auf APC & Memcache Bildquelle: http://www.sxc.hu/photo/1334670 setzen. Seite § 11
  • 14. Nachher +20% Seite § 14
  • 15. Was wurde gemacht? §  Internes Caching in Contao aktiviert §  Mod_Pagespeed mit diesen Filtern erweitert: §  Combine JS und CSS -> Kombiniert JS und CSS in wenige Dateien §  Rewrite CSS und JS ->minimiert die URL‘s §  Recompress Images -> Wandelt Bilder in PNG oder JPEG um. §  Sprite Images -> Wandelt Hintergrundbilder im CSS Code zu Sprites um Seite § 15
  • 18. Nachher +208% Seite § 18
  • 19. Was wurde gemacht? §  Installation von APC §  Installation Mod_Pagespeed mit folgenden Filtern: §  Combine JS und CSS -> Kombiniert JS und CSS in wenige Dateien §  Rewrite CSS und JS ->minimiert die URL‘s §  Recompress Images -> Wandelt Bilder in PNG oder JPEG um. §  Sprite Images -> Wandelt Hintergrundbilder im CSS Code zu Sprites um Seite § 19
  • 22. Nachher ohne CDN +100% Seite § 22
  • 23. Was wurde gemacht? §  Installation von Mod_Pagespeed mit folgenden Filtern: §  Inline/rewrite/outline/combine CSS §  Inline/rewrite/outline/combine JS §  Recompress/Rewrite/Sprite Images §  Installation des Plugins W3 Total Cache §  Alle Funktionen auf verschiedene Memcache Server §  HTML/CSS Tidy installieren und konfigurieren Seite § 23
  • 24. Nachher mit CDN +40% Seite § 24
  • 25. Warum CDN obwohl es doch langsamer ist? §  Das gute an CDN man zahlt nur wenn es gebraucht wird! §  Bei Seiten mit vielen Nutzern ist CDN eine gute Sache denn der Blog bleibt gleich schnell §  Ohne CDN bricht irgendwann der Server zusammen! Seite § 25
  • 27. Ladezeit-Optimierung auf dem CMS in wie weit möglich? Contao Joomla Wordpress §  DiskCache §  DiskCache §  DiskCache §  Mod_PageSpeed §  APC §  APC §  MEMCACHE <-Buggy §  MEMCACHE §  CDN §  CDN §  Minify §  Minify §  Mod_PagesSpeed §  Mod_PageSpeed Page § 27
  • 28. Fragen Wenn etwas unklar war ist jetzt der Augenblick es zu ändern ;-) Seite § 28