2. Hi!
• Seit 2003 bei der 1&1 Internet AG
• Abteilung betreut die Bestellsysteme
der 1&1 (Shops)
• Experte für Frontend-Technologien
• HTML, XML, CSS, JavaScript
• Accessibility, Website Performance,
AJAX, Suchmaschinenoptimierung
Nico
3. Eigenschaften der 1&1 Shops
• Ca. 30 verschieden große Webapplikationen
• Hunderte Seiten pro Applikation
• Tausende von Grafiken
• Hunderte Stylesheets und Scripte• Hunderte Stylesheets und Scripte
• Täglicher Abruf von mehreren Terabyte an
Ressourcen
12. Deutschland
• In keiner Top 10 vertreten
• Landesweite Verbindungsgeschwindigkeit
durchschnittlich unter 5 Mbit/s
• Baden-Baden als einzige deutsche Stadt auf Platz 61• Baden-Baden als einzige deutsche Stadt auf Platz 61
mit durchschnittlich 7,6 Mbit/s
• Platz 1: Südkorea/Masan mit
durchschnittlich 17 / 20,9 Mbit/s
• Global durchschnittlich 1,8 Mbit/s
19. Google runs expirements on the
search results page to understand and
improve search expirience.
Our expiriment injected server-side delay
100 bis 400 ms
0,2% bis 0,6% weniger Suchanfragen
20. It comes down just one factor – speed.
2,2 Sekunden schneller
15% mehr Downloads
10,8 Mio/Jahr
32. Modularisierung mit Dependencies
<LINK href=“/xml/jasmin/dslorder+clearfix+autocompletion/css“>
<SCRIPT src=“/xml/jasmin/dslorder+clearfix+autocompletion/js“>
33. Wenige HTTP Requests
„Lade für alle Seiten die Ressourcen des DSL-Projekts und zusätzlich
nur für die Seite DslCheck die Ressourcen der Autocompletion.“
DslStart DslMobile DslCheck
dslorder dslorder dslorder
autocompletion
1. Request
2. Request
34. Wenige HTTP Requests
1. Request
2. Request
„Lade für alle Seiten die Ressourcen des DSL-Projekts und zusätzlich
nur für die Seite DslCheck die Ressourcen der Autocompletion.“
1. Request
2. Request
gZip
1. Seite 2. Seite
44. Far Future Expires Header
2,5 Sekunden!
Far Future Expires Header: „Diese Ressource verändert sich für die
nächsten 15 Jahre nicht und kann immer
aus dem Cache bezogen werden.“
45. Far Future Expires Header
„Wie erzwinge ich ein Neuladen, wenn sich die Ressource doch
verändern sollte?“verändern sollte?“
46. „Auf der 1und1.de gibt es einen
Anzeigefehler bei Usern, die einen
Browser-Cache aktiviert haben.
Wie können wir solche Fehler
vermeiden?“
47. Far Future Expires Header
„Wie erzwinge ich ein Neuladen, wenn sich die Ressource doch
verändern sollte?“
48. Far Future Expires Header
/img/footer/ui-logo.gif
Publish
Internet
MD5-Hash
/img/footer/ui-logo.gif
32j4g23j4-ui-logo.gif
Sync auf CDS
<img src=„/img/footer/ui-logo.gif“>
url(/img/footer/ui-logo.gif)
<img src=„http://uicdn.net/32j4g23j4-ui-logo.gif“>
url(http://uicdn.net/32j4g23j4-ui-logo.gif)
CDS
Expires Header
HTML
61. Warum eine eigene Domain?
StartseiteStartseite
Mobile Internet Eigene Homepage DSL
62. Warum eine eigene Domain?
Startseite
Mobile Internet
Eigene Homepage
DSL
CDN
63. Warum eine eigene Domain?
home.1und1.de/header/logo.png
mobile.1und1.de/header/logo.png
dsl.1und1.de/header/logo.png
homepage.1und1.de/header/logo.png
www.uicdn.net/header/43j2hg35-logo.png
65. Content Delivery Server (CDS)
http://www.youtube.com/watch?v=IWWBnJEsUtU
„Larry Page hat einmal die Vision geäußert, Webseiten
so schnell browsen zu können, wie man die Seiten in
einem Hochglanzmagazin umblättert.“
68. Kennzahlen
„Welche Größe haben die Daten, welche von den verschiedenen Seiten eines
Projekts abgerufen werden?“
„Werden Daten angefragt, die nicht verfügbar sind (404)?“
http://zoompf.com/2010-state-of-web-performance-report
78. “The thing it does differently than most others is it allows you to express
via the API calls when it is necessary to preserve execution order
for dependencies.”
http://labjs.com/
<script type="text/javascript" src="js/LAB.js"></script>
<script type="text/javascript"><!—
$LAB
.script(„some-scripts-1.js“).wait()
.script(„some-scripts-2.js“);
//--></script>
100. Wie groß sind die ausgelieferten Ressourcen?
Pro Seite
Pro Applikation
Gibt es Ausreißer?
Werden Ressourcen nicht gefunden?
Gibt es überflüssige Ressourcen?
112. To avoid overloading our servers, only 25 issues can
be returned at a time.
Return more than 25 crawling issues?
Jonathan Simon: […] it‘s propably time to consider
raising it. I‘ll discuss your feedback with the team.
117. Vielen Dank für eure
Aufmerksamkeit!
nico.steiner@1und1.de
@sensationalseo
www.nicosteiner.de
www.slideshare.net/n.steinerhttp://www.flickr.com/photos/ben30/4028840988/