SlideShare ist ein Scribd-Unternehmen logo
Webmontag. Frankfurt. Schneller. Nur 15 Minuten. WPO. Web Performance Optimierung. Namics.Martin Kliehm. Senior Frontend Engineer.@kliehm. @namics.17. Mai 2010
Web Performance Optimierung seit 200617.05.2010Performance. Webmontag.2
Performance:schnell & klein sein.17.05.20103Performance. Webmontag.http://flic.kr/p/5jZ2nP
Performance. Webmontag.Komponenten einer Webseite:Ein großes deutsches Bankhaus17.05.20104http://webpagetest.org
Performance. Webmontag.Komponenten einer Webseite:Ein großes deutsches Bankhaus17.05.20105← Backend (HTML): 8,67%DNS Lookup:	299 msBackend (HTML):	514 ms = 8,67%Frontend:	5402 ms = 91,12%JavaScript:1717 ms
Komponenten einer Webseite:Ein großes deutsches Bankhaus17.05.20106DNS Lookup:	299 msBackend (HTML):	514 ms = 8,67%Frontend:	5402 ms = 91,12%JavaScript:1717 msJavaScript lädt sequentiellBilder:nur 2 – 4parallelGesamt:	5928 msFrontend: 91,12%Performance. Webmontag.
5,9 Sekunden Ladezeit sinddoch nicht schlecht, oder?17.05.20107Performance. Webmontag.http://flic.kr/p/27sG2k
Case Studies: Langsamer100 ms. Verzögerung è− 1% Umsatz400 ms. Verzögerung è− 0,59% Suchen pro User400 ms. Verzögerung è5 – 9% weniger Traffic2 sec. langsamer è− 4,3% Umsatz pro User17.05.2010Performance. Webmontag.8
Case Studies: Schneller2,2 sec. schnellere Seite è+ 15,4% Downloads− 30% Dateivolumen è+ 30% KartenaufrufeEine einzige Optimierungsmaßnahme, gzipè		+ 13-25% schneller,50% Dateivolumen eingespart5 sec. schnellere Shopseitenè+ 7-12% Conversion Rate,		+ 25% mehr Seitenaufrufe,		50% Server + Energiekosten gespart17.05.2010Performance. Webmontag.9
17.05.2010Performance. Webmontag.10http://scribd.com/doc/16878352/The-Secret-Weapons-of-the-AOL-Optimization-Team
17.05.2010Performance. Webmontag.11http://scribd.com/doc/16878352/The-Secret-Weapons-of-the-AOL-Optimization-Team
17.05.2010Performance. Webmontag.12http://scribd.com/doc/16878352/The-Secret-Weapons-of-the-AOL-Optimization-Team
17.05.2010Performance. Webmontag.13http://scribd.com/doc/16878352/The-Secret-Weapons-of-the-AOL-Optimization-Team
Google Search Ranking“Our users place a lot of value in speed —  that’s why we’ve decided to take site speed  into account in our search rankings.”Google Blog, April 201017.05.2010Performance. Webmontag.14
Performanz. Schneller. Besser. Grüner.Mehr Umsatz. Alle glücklich. Namics.17.05.201015Performance. Webmontag.http://flic.kr/p/8VHFb
Die (bekannten) 14 Regeln17.05.201016Performance. Webmontag.
Die (bekannten) 14 RegelnGzip Components Add an Expires HeaderReduce DNS Lookups Avoid RedirectsMake Fewer HTTP RequestsMake JavaScript and CSS ExternalMinify JavaScriptPut CSS at the TopAvoid CSS ExpressionsPut Scripts at the BottomRemove DuplicateScriptsUse a Content Delivery Network (CDN)Configure ETagsMake AJAX Cacheable17.05.2010Performance. Webmontag.17http://developer.yahoo.com/performance/rules.html
Die (bekannten) 14 35 RegelnFlushBufferEarlyUseGETforAjaxRequestsPostload ComponentsPreload ComponentsReducetheNumberofDOM ElementsSplit ComponentsAcross DomainsMinimizeNumberofiframesAvoid404sReduceCookie SizeUseCookie-Free Domains for ComponentsMinimizeDOM AccessDevelopSmart Event HandlersChoose<link> Over @importAvoidFiltersOptimizeImagesOptimizeCSS SpritesDo Not ScaleImages in HTMLMakefavicon.ico Small andCacheableKeep Components Under25 KBPack Components Into a Multipart DocumentAvoidEmpty Imagesrc17.05.2010Performance. Webmontag.18http://developer.yahoo.com/performance/rules.html
17.05.201019Performance. Webmontag.Neue (?) Ideen:Keine eigene Datei print.css
<link type="text/css"media="print"src="print.css" />17.05.2010Performance. Webmontag.20@mediaprint { a { text-decoration: none; }}ü
17.05.201021Performance. Webmontag.CSS background-images reduzieren mit data:URI
#wrapper {	background:url( bg.gif ); }17.05.2010Performance. Webmontag.22#wrapper {	background:url( "data:image/png; 			base64,iVBORw0[…]" ); }ühttp://software.hixie.ch/utilities/cgi/data/data
		Die Lösung: M(ultipart)HTML		in der ie.css/*Content-Type: multipart/related; boundary="SEPARATOR"--SEPARATORContent-Location:bgimg1Content-Transfer-Encoding:base64iVBORw0[…]*/17.05.2010Performance. Webmontag.23http://phpied.com/mhtml-when-you-need-data-uris-in-ie7-and-under/
		Die Lösung: M(ultipart)HTML		in der ie.css#wrapper {	background:url( "mhtml:http://me.com/ie.css!bgimg1" );}17.05.2010Performance. Webmontag.24http://phpied.com/mhtml-when-you-need-data-uris-in-ie7-and-under/
17.05.201025Performance. Webmontag.Apache-Module: modconcat, modjsmin, moddims
Apache modconcat zum Aggregieren von CSS oder JavaScript<script type="text/javascript"src="http://yourdomain.com/??script-1.js,script-2.js"></script>Verwendet den Cache Header derjüngstenDatei17.05.2010Performance. Webmontag.26http://artzstudio.com/2008/08/using-modconcat-to-speed-up-render-start/
Apache modjsmin$ apxs -c mod_jsmin.cLoadmodulejsmin_modulemodules/mod_jsmin.so17.05.2010Performance. Webmontag.27http://code.google.com/p/modjsmin/
Apache moddims<imgsrc="http://yourdims.com/dims/resize/320x240/quality/70/		http://yourdomain.com/ 			lorem.jpg"width="320" height="240"	alt="Loremipsum" />17.05.2010Performance. Webmontag.28http://code.google.com/p/moddims/
17.05.201029Performance. Webmontag.Lazy-loadimages
Lazy-Loading von BildernVerschiedene JavaScript-Libraries:17.05.2010Performance. Webmontag.30LazyLoad (jQuery)
ImageLoader (YUI)
Sonar (AOL, standalone)17.05.201031Performance. Webmontag.@font-face für Icons
@font-face für IconsIcons in Illustrator erstellenIn FontForge importierenVerschiedene Font-Formate mitFontSquirrel generieren (TTF, WOFF, EOT, SVG)@font-faceim CSS einbauenVorteile: skalierbar, Farbe frei wählbar, an Grundlinie ausgerichtet; Nachteil: einfarbig (Gradient mit CSS3?)17.05.2010Performance. Webmontag.32

Weitere ähnliche Inhalte

PPTX
JavaScript-Erweiterungen für UI und UX
PDF
Echtzeitvisualisierung von Twitter & Co
PDF
FMK2017 - REST mobil- die andere Serververbindung by Volker Krambrich
PDF
FMK2012: FileMaker und Java ...und es öffnen sich neue Welten! von Bernhard ...
PDF
FMK2017 - WebDirect vs. FileMaker Pro by Klemens Kegebein und Holger Darjus
PDF
FMK2017 - Das FileMaker Selector-Connector Modell - Wie kann ich es sinnvoll ...
PDF
FMK2017 - Wordpress und FileMaker by Karsten Risseeuw
PDF
FMK2017 - Vortrag FileMaker als Frontend zum Aktuallisieren von dynamischen W...
JavaScript-Erweiterungen für UI und UX
Echtzeitvisualisierung von Twitter & Co
FMK2017 - REST mobil- die andere Serververbindung by Volker Krambrich
FMK2012: FileMaker und Java ...und es öffnen sich neue Welten! von Bernhard ...
FMK2017 - WebDirect vs. FileMaker Pro by Klemens Kegebein und Holger Darjus
FMK2017 - Das FileMaker Selector-Connector Modell - Wie kann ich es sinnvoll ...
FMK2017 - Wordpress und FileMaker by Karsten Risseeuw
FMK2017 - Vortrag FileMaker als Frontend zum Aktuallisieren von dynamischen W...

Was ist angesagt? (7)

PPTX
Echtzeitvisualisierung von Twitter und Co.
PPTX
Avoid Network-Issues and Polling
PDF
Was bedeutet BlackBerry 10 für Unternehmen?
PDF
FMK2015: FileMaker 14 Webdirect by Michael Valentin
PPTX
WebSocket my APEX!
PDF
IBM Connections 6 und was ist Pink?
PDF
Wer die (Client) Wahl hat, hat die Qual
Echtzeitvisualisierung von Twitter und Co.
Avoid Network-Issues and Polling
Was bedeutet BlackBerry 10 für Unternehmen?
FMK2015: FileMaker 14 Webdirect by Michael Valentin
WebSocket my APEX!
IBM Connections 6 und was ist Pink?
Wer die (Client) Wahl hat, hat die Qual
Anzeige

Ähnlich wie Performance. Webmontag. Frankfurt. (20)

PPTX
Web Performance Optimierung (WPO)
PDF
Site Speed EXTREME - SEOkomm 2014
PDF
SDC2011: Web Performance Optimization
PDF
Frontend Performance @ Hochschule der Medien Stuttgart
PDF
Automatisierung von Client-seitigen Web-Performance-Optimierungen
PPTX
Cologne Web Performance Meetup 29.04.2020
PDF
Mehr Pagespeed geht nicht - SEOkomm 2015
PDF
Der Business-Case für Beschleunigung im digitalen Marketing
ODP
Frontend Performance
PPTX
Front End Performance Optimierung
PDF
Performance-Optimierung für CMS getriebene Websites.
PPTX
Top 10 Internet Trends 2011
PPTX
Top 10 Internet-Trends
PDF
Wke2016
PDF
Client-side Performance Optimizations
PDF
Web Performance Optimization - Web Tech Conference 2011 Talk
PDF
Web Performance Optimization - JAX 2011 Talk
PDF
Campixx 2012-ladezeit-extreme
PDF
High Performance Websites und Google
PPTX
HTML5-Performance: So rennt Ihre App und nicht Ihre Anwender (weg)
Web Performance Optimierung (WPO)
Site Speed EXTREME - SEOkomm 2014
SDC2011: Web Performance Optimization
Frontend Performance @ Hochschule der Medien Stuttgart
Automatisierung von Client-seitigen Web-Performance-Optimierungen
Cologne Web Performance Meetup 29.04.2020
Mehr Pagespeed geht nicht - SEOkomm 2015
Der Business-Case für Beschleunigung im digitalen Marketing
Frontend Performance
Front End Performance Optimierung
Performance-Optimierung für CMS getriebene Websites.
Top 10 Internet Trends 2011
Top 10 Internet-Trends
Wke2016
Client-side Performance Optimizations
Web Performance Optimization - Web Tech Conference 2011 Talk
Web Performance Optimization - JAX 2011 Talk
Campixx 2012-ladezeit-extreme
High Performance Websites und Google
HTML5-Performance: So rennt Ihre App und nicht Ihre Anwender (weg)
Anzeige

Mehr von Martin Kliehm (10)

PDF
Open City Data & Open Culture Data
PDF
Kommunale Arbeit der ELF Piraten Fraktion Frankfurt
PPTX
Accessibility in Canvas 3D
PPTX
P2PU Web Accessibility Lesson 1: Setting Motivation
PPTX
Webmontag Frankfurt: Jugendliche mit selbstgebauten Flammenwerfern
PPTX
Abgesenkte Bordsteine im Web. Warum von Barrierefreiheit Alle profitieren.
PPT
ARIA und HTML 5
PPT
Standards.Next: Canvas
PPT
PPT
Das Canvas-Element in HTML5
Open City Data & Open Culture Data
Kommunale Arbeit der ELF Piraten Fraktion Frankfurt
Accessibility in Canvas 3D
P2PU Web Accessibility Lesson 1: Setting Motivation
Webmontag Frankfurt: Jugendliche mit selbstgebauten Flammenwerfern
Abgesenkte Bordsteine im Web. Warum von Barrierefreiheit Alle profitieren.
ARIA und HTML 5
Standards.Next: Canvas
Das Canvas-Element in HTML5

Performance. Webmontag. Frankfurt.

Hinweis der Redaktion

  • #2: „WPO“ ist das Akronym für Web Performance Optimierung, analog zu „SEO“ wird es in den nächsten Jahren eine eigene Industrie werden.
  • #3: TenniTheurer und Steve Souders begannen 2006 bei Yahoo!, die Performanz von Webseiten eingehender zu untersuchen. Entsprechend der Prämisse, dass man am Ende mehr profitiert, wenn man seine Erkenntnisse mit anderen teilt, publizierte Yahoo! diese Ergebnisse auf Konferenzen und Blogs noch im selben Jahr. Souders veröffentlichte in der Zwischenzeit zwei Bücher zum Thema und arbeitet heute bei Google. Bei Namics befassen wir uns mit WPO seit Sommer 2006.
  • #5: Studien von Yahoo! und Google haben ergeben, dass nur 10-20% der Ladezeit vom Server abhängig ist. Bis vor wenigen Jahren dachte man bei Geschwindigkeit ausschließlich an den Server. Tatsächlich werden aber 80-90% der Ladezeit im Frontend fällig. Darum ist Web Performance Optimierung (WPO) im Frontend effizienter.Zwei wichtige Schwachstellen sind JavaScript-Dateien und die schiere Anzahl von Dateien:JavaScript lädt sequentiell und blockiert sämtliche nachfolgenden Inhalte. Darum sollte es nicht im Kopf, sondern im Fuß einer Seite stehen.Zweitens können ältere Browser, vor allem der Internet Explorer, nur 2-4 Dateien parallel laden. Dateien bilden darum eine Schlange, die nur langsam abgearbeitet wird. Ziel ist es darum, durch Zusammenfassung von Dateien die Anzahl der HTTP-Requests zu reduzieren.
  • #9: Zusätzlich zur Seitenverzögerung hat man festgestellt, dass die Nutzer abgelenkter werden. 400 ms. mehr Ladezeit führten zu fast 800 ms. Verzögerung bis zur Interaktion mit der Seite!
  • #11: AOL hat die Anzahl der Page Views in Abhängigkeit von der Ladegeschwindigkeit untersucht. Wenig überraschend war die Anzahl der besuchten Seiten höher, wenn sie schnell luden. Interessanterweise ist der Kurvenverlauf bei den untersuchten Sites unterschiedlich. Offenbar spielt der Kontext bzw. Surf-Modus eine Rolle, wieviele Seiten ein User durchklickt.
  • #31: Es gibt verschiedene JavaScript-Libraries, die Bilder erst dann nachladen, wenn man sie braucht.