2. 2
Christoph Adler
Technical Account Manager – panagenda
IBM (Lotus) Notes / Domino seit 2001
Berater in diversen externen (Groß-)Projekten
Administration
Migrationen / Konsolidierungen
Client Management
Application Management
Seit 2012 TAM bei panagenda mit Kernkompetenz
Notes Client Management
Domino Infrastruktur-Analysen und Optimierung
[...]
Vielreisender
Projekte mit vielen verschiedenen Unternehmen in vielen
Ländern
3. 3
Agenda
Client Performance – Probleme verstehen und beheben
Übersicht: Was bringt ein Notes9 Client mit sich
Was ClientSTARTs verlangsamt (und beschleunigt)
Was ClientPERFORMANCE beeinträchtigt (und verbessert)
Tieftauchen
Ein Blick unter die Haube der Client-Server Kommunikation
5. 5
Was ein (genutzter) Notes 9.0.1 STANDARD Client üblichweise mit sich bringt
> 20.000 41.000 Dateien (Notes 6/7 | 8/9 Basic ~550) = +7.400%
17.000 21.800 Dateien in Notes Programframework in 1.800 2.150 Unterverzeichnissen
7.500 8.800 (überwiegend undokumentierte) .properties Dateien
1.500 1.600 jar Dateien
1.200 1.300 HTML Dateien
3.000 1.182 Dateien in Notes Dataworkspace – in 2.400 700 Unterverzeichnissen, von denen 1.850 leer sind
900 180 (überwiegend undokumentierte) XML Dateien
100+ 80 (überwiegend undokumentierte) properties Dateien
Das sind ...
20.000 41.000 Dateien in 4.600 4.860 Unterverzeichnissen
8.500+ 9.000+ überwiegend undokumentierte Dateien
Viele (viele viele) Unterverzeichnisse die schlichtweg leer sind, vor allem in Dataworkspace
... und bis zu 100 NSFs/NTFs (=0.5 0.2 %)
... und natürlich die gute alte notes.ini !
6. 6
+ über 60 Einstellungs-Dialogboxen
Jeder Dialog hat im Mittel ~15 Einstellungen:
• 1000+ Einstellungen
per Addressbuch (names.nsf) - sehr wenige
per notes.ini - wenige
per XML & propertie Dateien - tonnenweise
Plus:
• Plugins, Widgets, Addons, etc.
die „Sie“ oder Benutzer dem Client beibringen.
8. 8
Bitte nicht vergessen
Workspace
(nsf)
Physical nsfs 1, 2, 3, … n
9. 9
Agenda
Client Performance – Probleme verstehen und beheben
Übersicht: Was bringt ein Notes9 Client mit sich
Was ClientSTARTs verlangsamt (und beschleunigt)
Was ClientPERFORMANCE beeinträchtigt (und verbessert)
Tieftauchen
Ein Blick unter die Haube der Client-Server Kommunikation
10. 10
Was ClientSTARTs verlangsamt (und beschleunigt)
Wenn Sie noch IBM Notes 9.0.1 nutzen signifikante Verbesserung
Hinweis: preloading vielleicht empfohlen – viele user starten Notes genau einmal täglich (=nur „Kalt“starts!)
EOM der IBM Lotus Produkte
http://www-01.ibm.com/software/lotus/support/lifecycle/
11. 11
Was ClientSTARTs verlangsamt (und beschleunigt) II
~50% des gesamten Datenvolumens
innerhalb von ‚Data‘ ändern sich täglich
– in den meisten Installationen
5 – 10% in Dataworkspace
DEAKTIVIEREN Sie den Virenscanner für
mindestens *.ns* Data
12. 12
Was ClientSTARTs verlangsamt (und beschleunigt) III
Client-Absturz / Datenbank fixups
Ganz besonders schlecht bzw. spürbar wenn sich das Data-Verzeichnis auf einem Netzlaufwerk/Fileserver
befindet
Prähistorische Hardware
Mindestens 2 GB – 4 GB Hauptspeicher empfohlen wenn Benutzer mehr als „nur“ Notes verwenden
(ansonsten: Swapping hell)
Alte Festplatten
Fragmentierung!
Tonnenweise Autostart-Programme und Logon-Scripte
Wenn die Festplatte beschäftigt ist, kann der Notes Client nichts dafür.
13. 13
Was ClientSTARTs verlangsamt (und beschleunigt) IV
‚Gewachsene‘ oder veraltete Data-Verzeichnisse
Nahezu 100% aller NTFs (Laptops: 90%) können wie folgt entfernt werden
Löschen alter Notes 4+5+6+7+8(+8.5) Templates (Schablonen)
Mittels ini:SharedDataDirectory= (auch bei Single User Installation)
Betriebsystem
Windows 7 startet ~40% schneller als WindowsXP
Windows 8.1 ~55% schneller als Windows XP
~20% schneller als Windows 7
14. 14
Was ClientSTARTs verlangsamt (und beschleunigt) V
Boot-Storm (bis zu 10x längere Startzeiten)
OS Indexing (bis zu 2-3x längere Startzeiten)
Festplattenverschlüsselung (bis zu -50%)
Datenbankverschlüsselung (bis zu -50%)
Port-/Netzwerk-Verschlüsselung (bis zu -20%)
15. 15
ODS? Was ist das denn?
ODS = On Disk Structure
ODS 16 = Notes 2
ODS 17 = Notes 3
ODS 20 = Notes 4 (oder Templates)
ODS 41 = Notes 5
ODS 43 = Notes 6 & 7
ODS 48 = Notes 8
ODS 51 = Notes 8.5 & 9
ODS 52 = Notes 9.0.1
Der Unterschied zwischen ODS 43 und 52 = bis zu 80% WENIGER FILE I/O; im Mittel -50%.
Hilft auch bei langsamen Festplatten, nicht nur SAN/NAS! – Server nicht vergessen!
Leider wird die ODS beim Client Upgrade nicht automatisch aktualisiert
Ausgenommen names.nsf, bookmark.nsf, und desktop*.dsk/ndk (vorrausgesetzt Sie machen es „richtig“ ... uh-oh)
Upgrade auf ODS 52 benötigt Notes >= 9.0.1 und CREATE_R9_DATABASES=1 in notes.ini
16. 16
ODS? Was ist das denn? II
Glücklicherweise kann man in Notes seit 8.5.x folgendes verwenden
NSF_UpdateODS=1
Dies führt ein einmaliges Upgrade aller lokalen Datenbanken im Hintergrund durch
EXTREME VORSICHT BEI DATA VERZEICHNISSEN AUF NETZLAUFWERKEN! Lastverteilung
Achtung: Endbenutzer können während Compact nicht auf Datenbanken zugreifen ( Mail-Repliken)
names.nsf und bookmark.nsf werden erst beim nachfolgenden Clientstart komprimiert ( Splash screen)
Erfolgsbeispiele
Startzeit eines Notes 9.0.1 clients mit drei ODS 20 Datenbanken in Notes data: 15 seconds
Nach ODS Upgrade: 6-7 Sekunden
Nach Upgrade aller NSFs von vorher überwiegend ODS 41 52 = 60% weniger File I/O auf SAN/NAS
Löschen von alten Dateien in Data Verzeichnissen auf SAN/NAS = 45% weniger managed storage (backup)
18. 18
Eclipse Framework Performance Improvement
Beschleunigt das Starten des IBM Notes Clients um bis zu 65%
Sinnvoll für virtuelle Umgebungen (z. B. Citrix XenApp, etc.)
NUR nutzbar mit einer IBM Notes Roaming-Komponente
19. 19
Eclipse Framework Performance Improvement (2)
Beispielkonfiguration anhand eines IBM Notes 9.0.1 FP2 Clients
1. Führen Sie mit einem ‚normalen‘ Benutzer (OS + Notes) eine Standard-Erstkonfiguration von IBM Notes durch
2. Starten Sie den IBM Notes Client 3x und warten dann jeweils 2-3Minuten
3. Beenden Sie den IBM Notes Client
4. Erstellen Sie innerhalb von “c:ProgramDataIBMNotesData“ das Verzeichnis “Common“
5. Kopieren Sie das “workspace“ Verzeichnis (unterhalb von DATA) nach
“c:ProgramDataIBMNotesDataCommon“
6. Löschen Sie die folgenden Verzeichnisse unterhalb von “c:ProgramDataIBMNotesDataCommonworkspace“
a) UDM
b) Logs alles bis auf .prov2install
c) cache falls vorhanden
d) .metadata.pluginscom.ibm.collaboration.*
e) .metadata.pluginscom.ibm.rcp.personality.framework
f) .metadata.pluginscom.ibm.rcp.security.auth
20. 20
Agenda
Client Performance – Probleme verstehen und beheben
Übersicht: Was bringt ein Notes9 Client mit sich
Was ClientSTARTs verlangsamt (und beschleunigt)
Was ClientPERFORMANCE beeinträchtigt (und verbessert)
Tieftauchen
Ein Blick unter die Haube der Client-Server Kommunikation
21. 21
Was ClientPERFORMANCE beeinträchtigt (und verbessert)
ODS lokaler Datenbanken (schon wieder)
Hardware (auch schon wieder)
Installationsvarianten (Basic vs. Standard, Data-Verzeichnis im Netz vs. Festplatte)
Desktop, Laptop, Citrix/vmware/VDI, Lokal, Netzwerk, …
Notes.ini und Netzwerk (mehr dazu später)
EXTMGR_ADDINS = (nicht nur) lokale Virenscanner Software
Deaktivieren Sie Notes „plugins“ wie Symantec oder McAfee – diese erhöhen Netzwerktraffic „gerne“
um 200 – 250%
Port-Settings (z.B. Kompression) – nicht aktiviert in vielen Unternehmen, oder noch schlimmer:
Deaktiviert auf Servern, aktiviert auf Clients …
22. 22
Wie finde ich eine gute Port-Einstellung?
Port-Einstellungen sind in der notes.ini enthalten
Typ / Aktiv / Verschlüsselung / Komprimierung / Timeout
Schlechte Idee
LAN0 / COMx / DisabledPorts / ... dürfen gerne entfernt werden
Gute Idee
TCPIP entsprechend des Clients nutzen
PORTS = TCPIP
TCPIP = TCP,0,15,0,,12320, Desktops !?
TCPIP = TCP,0,15,0,,45088, Laptops !?
TCPIP = TCP,0,15,0,,12288, Citrix / VDI !?
Server nicht vergessen!
23. 23
Was ClientPERFORMANCE beeinträchtigt (und verbessert) II
Verbindungsdokumente
Veraltete Hostnamen oder IP-Adressen
‘Niedrige Priorität’
Arbeitsumgebungen
IP-Adresse für den Mailserver Policies (schlechte Idee!)
Veraltete Werte
Mail-/Homeserver
Pfad zum Mailfile (Alarme!)
Catalogserver
24. 24
Das Catalog.nsf Problem ...
… oder auch “the Asian connection”
Benutzer in Hamburg
Schickt Doc|DB-Link an Benutzer in
Frankfurt
Leider verbindet sich Benutzer in Frankfurt
nicht mit Server vor Ort
sondern mit dem in Hamburg
... oder sogar Augsburg
25. 25
Was ClientPERFORMANCE beeinträchtigt (und verbessert) III
Das 95+5% Problem…
oder warum Manager IBM Notes oftmals nicht so sehr mögen wie sie “könnten/sollten”
90-95% funktionieren „irgendwie“
Training, Helpdesk, IT-versierte Endbenutzer, ...
Dennoch enormes Kosteneinsparungspotential (z.B. 80% weniger Helpdeskanrufe)
Die übrigen 5-10% benötigen allerdings 75+% alle IT-Aufwände (manuell / individuell)
z.B. Notes 9 Upgrade Paket an alle Clients
Alle „Problem“-Clients nachbearbeiten benötigt 75% der gesamten Projektzeit & -Aufwände
ACHTUNG: Nahezu 100% aller VIPs sind Bestandteil dieser „5-10%“
Hohe Frustration auf Management-Level
Hohe Migrationsbereitschaft
(weg von Notes; anfänglich ‚nicht‘ hin zu ‚einem anderen Produkt)‘
26. 26
Agenda
Client Performance – Probleme verstehen und beheben
Übersicht: Was bringt ein Notes9 Client mit sich
Was ClientSTARTs verlangsamt (und beschleunigt)
Was ClientPERFORMANCE beeinträchtigt (und verbessert)
Tieftauchen
Ein Blick unter die Haube der Client-Server Kommunikation
27. 27
Mehr Hauptspeicher für den Client
Notes täglich Beine machen – nur für Administratoren/Entwickler
Suchen Sie die Datei jvm.properties in [NotesProgramDir]frameworkrcpdeploy
im Texteditor öffnen
Folgende Zeile suchen (üblicherweise ziemlich am Anfang): vmarg.Xmx=-Xmx256m
Ändern auf z.B. vmarg.Xmx=-Xmx1024m (Maximum ist ½ physischer Speicher; NICHT auf mehr als
1024m ändern, egal wieviel Hauptspeicher Sie haben)
Ändern Sie vmarg.Xms=-Xms48m auf ¼ des Xmx - Wertes;
wenn Sie z.B. vmarg.Xmx auf -Xmx1024m geändert haben, setzen Sie
vmarg.Xms=-Xms256m
NICHT empfohlen für Produktionszwecke / normale Endbenutzer;
nur für Administratoren & Entwickler!
28. 28
Client Clocking
HINWEIS: Bitte nur auf EINEM Client ausführen – Performace + Output
CLIENT_CLOCK=1
CONSOLE_LOG_ENABLED=1
Debug_Outfile=c:debug.txt
Debug_Console=1
DEBUG_TCP_ALL=1 (nur im Bedarfsfall!)
Fileserver/Disk Performance Debugging ist mühsam bis unmöglich
(versuchen Sie‘s mal mit DEBUGGINGWCTENABLED=16386 in Notes >= 8.5)
29. 29
Client Clocking II
Client_Clocking=1 führt zu einer Debug-Datei in folgendem Format
31. 31
Agenda
Client Performance – Probleme verstehen und beheben
Übersicht: Was bringt ein Notes9 Client mit sich
Was ClientSTARTs verlangsamt (und beschleunigt)
Was ClientPERFORMANCE beeinträchtigt (und verbessert)
Tieftauchen
Ein Blick unter die Haube der Client-Server Kommunikation
32. 32
Verzögerungen im Netzwerk = Latenzen
Netzwerklatenz hat einen wesentlich Einfluss auf die gefühlte Client Performance
Vor allem bei Benutzern, die (versuchen) mit serverseitigen Datenbanken zu arbeiten!
33. 33
Latenzzeiten und Ihre Bedeutung für Endbenutzer
... Aus Antwortzeiten werden Lieferfristen
# RPC Calls * (Latenz Up + Latenz Down)
Beispiel Öffnen der Maildatenbank:
30 Calls * (60ms + 60ms) = 3.600 ms
34. 34
Gut zu wissen
Was passiert wenn man die Cache.ndk löscht?
(für nur eine einzige Datenbank)
100 User =
150 MB vs. 3.7 MB
1000 User =
1.5 GB vs. 37 MB
Exklusive Fileserver!
35. 35
Fazit
• Konfigurationsmöglichkeiten und Konnektivität sind gleichzeitig die wesentlichen Stärken und
Schwächen von IBM Notes/Domino
• Schwächen können mit Wissen/Zeit und Werkzeugen behoben werden
• Je < das Wissen/Zeit, desto wichtiger die Werkzeuge
• nicht nur einfach neu Installieren
• nicht aufgeben
• wenn Sie sich für Ihre Clients einsetzen,
macht es sich hundertfach bezahlt (nicht nur mit Email *wink*)
• Jedes Symptom hat eine Ursache – behandeln Sie die Ursache, nicht nur Symptome!
36. 36
Endspurt
90 Minuten für Performance-Verbesserungen
reichen gerade einmal für einen Spaziergang
über den Eisberg.