Wie die Leistung der Applikation maximiert werden kann
Überblick:
I. Design der OLAP-Datenbanken und Ansichten im Web Client
II. Client-Browser
III. Client-Hardware
I. Design der OLAP-Datenbanken und Ansichten im Web Client
Der Web Client kann intern sehr große Datenbanken, Würfel und
Dimensionen handhaben, aber Internet-Browser benötigen eine gewisse
Zeit, um eine große Menge von Elementen in einer Combobox oder einer
Tabelle anzuzeigen. Speziell die Dimensionen, die in der vertikalen
oder horizontalen Achse der 2-dimensionalen Tabelle einer Ansicht
positioniert werden, sollten so gestaltet oder strukturiert sein, dass
nicht zu viele Elemente gleichzeitig angezeigt werden. Dies kann durch
eine Strukturierung der ursprünglichen Olap-Dimension mit genügend
konsolidierten Elementen gewährleistet werden. Es können aber auch
im Web Client Subsets und/oder Lokale Filter für eine Dimension
genutzt werden, um zu viele gleichzeitig anzuzeigende Wurzel-Elemente
oder Kind-Elemente direkt unter einem Vater-Element zu vermeiden.
II. Client-Browser
Die Geschwindigkeit verschiedener Browser bezüglich der
Script-Ausführung variiert sehr.
- IE7, IE6 und IE5 sind langsam und nicht zu empfehlen.
- Internet Explorer 8 ist ca. 3-mal schneller als IE7.
- Firefox 3.x ist ca. 10-mal schneller als IE7.
- Safari ist ca. 15-mal schneller als IE7.
- Iron und Chrome sind ca. 30-mal schneller als IE7.
- Wir empfehlen IE8, Firefox 3.x, Safari, Chrome und Iron.
Trotzdem könnte die Script-Ausführung bei der Anzeige einer Ansicht
mit sehr vielen sichtbaren Datenzellen zu lange erscheinen.
In diesen Fällen stellt der Browser selbst Nachfragen, ob der Anwender
die weitere Ausführung des Scripts wünscht oder abbrechen möchte.
Falls das Script abgebrochen wird, verbleibt die Ansicht in einem
undefinierten Zustand und muss geschlossen und erneut geöffnet werden.
Es ist möglich, diese Nachfragen des Browsers jedes Mal erneut zu
beantworten, wenn sie erscheinen. Es kann aber auch der Grenzwert
für die Zeitüberschreitung im jeweiligen Browsers geändert werden.
Firefox ermöglicht die Deaktivierung des Benachrichtigungsdialogs
direkt im Dialog selber. Im Folgenden wird eine Vorgehensweise
beschrieben, den Grenzwert für das Erscheinen der Nachfrage zu
ändern:
a. ‘about:config’ in der Adresszeile des Firefox eingeben
b. Den Schlüssel ‘dom.max_script_run_time’ suchen, indem man ihn eingibt.
c. Den Wert (in Sekunden) ändern. (Standardwert ist 10 Sekunden)
d. Der Schlüssel ‘dom.max_chrome_script_run_time’ ermöglicht es, den
gleichen Wert für Applikationen mit Chrome-Rechten zu setzen.
Internet Explorer
Die Information zur Beeinflussung des Grenzwertes findet sich hier:
(basierend auf der absoluten Zahl der ausgeführten Script-Anweisungen)
http://support.microsoft.com/kb/175500 (in aktueller Browsersprache)
http://support.microsoft.com/kb/175500/de-de/ (in Deutsch)
Safari
Informationen über die Deaktivierung des "Runaway JavaScript Timer"
in Safari sind durch Eingabe exakt dieses Suchbegriffes in der Safari
Hilfe zu finden.
Iron und Chrome
Diese sehr ähnlichen Browser benötigen keine Deaktivierung der
Script-Zeitüberschreitung oder ein Verändern des Grenzwertes, weil sie
- im Gegensatz zu allen anderen Browsern – eine hilfreiche Technik nutzen:
Obwohl sie auch eine Benachrichtigung anzeigen, wird die Script-Ausführung
nicht angehalten bis die Nachfrage beantwortet ist, so dass der Anwender
die Nachfrage nicht beantworten muss, um den Programmablauf fortzuführen.
III. Client-Hardware
Da die Geschwindigkeit der Script-Ausführung eines Browsers auch von
der Geschwindigkeit der CPU abhängt hilft ein schneller Prozessor.
Der Wert des "Maximum memory pool" eines Tomcat Servers ist nach einer
Standardinstallation sehr gering definiert. Die Erhöhung dieses Wertes
auf einen für das System passenden Wert ist ratsam. Im 32-Bit-Tomcat
empfehlen wir 1024MB. Im 64-Bit-Tomcat kann der Wert höher sein.
In einer Windows-Installations-Version kann dieser Wert in den
"Apache Tomcat Properties" gesetzt werden.
In einem Linux-System kann in der Datei "/tomcat/bin/catalina.sh"
einer Zeile wie diese hier hinzugefügt werden:
CATALINA_OPTS="$CATALINA_OPTS -Xmx1024m"
Der Tomcat-Server kann zu Testzwecken auf einem simplen Desktoprechner
oder Laptop betrieben werden. Für eine bessere Leistung sollte er aber
wie jede Server-Applikation auf einer adäquaten Server-Maschine laufen.
Tensegrity lässt seine öffentliche Online-Demo zu Testzwecken auf einer
sehr einfachen Linux-Maschine mit einem Single-Core-Prozessor laufen.
Für ein Produktivsystem empfehlen wir mindestens Dual-Core oder
Multi-Core-Prozessoren mit mehr als 2GB RAM.