2. About me
Daniel Fisher CTO.
devcoach®
Mit-Gründer und Geschäftsführer von
devcoach®.
Mit-Gründer und Vorstand der
just community e.V.
Leiter der .NET-Nieder-Rhein
INETA User-Group.
Mitglied im Microsoft
Community Leader & Insider Program.
3. About us
Beratung & Projektunterstützung
• REST & SOA – Architektur
• BPM & FDD – Prozesse
• Sicherheit & Claims – Identity
• DAL & ORM – Daten
• RIA & AJAX – Web 2.0
Technologien
• ASP.NET, WCF, WF & CardSpace – .NET
Kunden
• Versicherungen, Großhandel, Software – u.A.
Microsoft
10. Klassischer Datenzugriff #2
• Paging
– 1 initialer Request/Response
– 1 Datenzugriff
– Je Seitenwechsel 1 Request/Response
– ViewState
• PRO: Nur wenn Datenquelle sehr sehr sehr
langsam und keine Snapshots oder Replikation
möglich ist!
• CON: Ping-pong on the wire
Daniel.Fisher@devcoach.biz
11. Zusammenfassung
• Paging hilft nicht beim ersten Request.
• Paging erhöht das transportierte Daten-
Volumen.
– Gefühlte Performance lässt nach …
Daniel.Fisher@devcoach.biz
15. ASP.NET AJAX Light
• Das Update Panel
• == Klassischer Datenzugriff
• Etwas verringertes übertragenes Daten-
Volumen unter der Prämisse, das das
UpdatePanel nicht die gesamte Seite
einschließt!
• Keine Lösung
Daniel.Fisher@devcoach.biz
16. AJAX FÜR ECHTE MÄNNER
(UND TAFFE FRAUEN)
Es geht auch anders…
Daniel.Fisher@devcoach.biz
17. AJAX Datenzugriff
• Markup und Daten werden getrennt übertragen
– 1 initialer Request/Response (Markup)
– Je Seitenwechsel 1 Request/Response (Daten)
– Je Seitenwechsel 1 Datenzugriff
– Optimierteres Daten-Volumen
– Vermehrte Datenzugriffe
– Vermehrte Requests
Daniel.Fisher@devcoach.biz
18. Mehr Requests + Mehr Datezugriffe !
= Mehr Performance
AJAX Milchmädchenrechnung
Daniel.Fisher@devcoach.biz
19. Probleme für den Entwickler
• JavaScript ist Parallel-Know-how
– Eine weitere Sprache…
• Untypisiert!
– Keine Kompilierung…
– Tool-Chain erst am Anfang…
– Keine Controls für Massendaten…
Daniel.Fisher@devcoach.biz
20. Developer Convenience
• Bewährte Konzepte anwenden um neue Aufgaben zu
vereinfachen.
– Technologie: ASP.NET AJAX
– Aufgabe: Datenbindung
• Wir leihen uns mal ein
paar Konzepte…
– Technologie: ASP.NET
– Aufgabe: Datenbindung
Daniel.Fisher@devcoach.biz
30. AJAX Datenzugriff #3
• Markup und Daten werden getrennt übertragen
und Serverseitig gecached
– 1 initialer Request/Response (Markup)
– Je Seitenwechsel 1 Request/Response (Daten)
– Je Seite eines Seitenwechsel einmalig 1 Datenzugriff
– Je Seite eines Seitenwechsel einmalig 1 Request
– Optimierteres Daten-Volumen
– Veringerter Datenzugriff
– Veringerte Requests
Daniel.Fisher@devcoach.biz
31. Thin-Client wird Fett…
• Von nichts kommt nichts…
– Das was auf dem Server „gespart“ wird muss
jemand anderes „bezahlen“:
• Der Client
Daniel.Fisher@devcoach.biz
32. Footprints im Internet Explorer
Datensätze (n) Speicherverbrauch (MB)
0 43
10 66
100 72
500 91
1000 114
2000 162
3000 259
Daniel.Fisher@devcoach.biz