Nach dem Durcharbeiten des Kapitels "Installation von benötigter Drittanbieter-Software" sind die entsprechenden Server-Dienste bereits lauffähig. In diesem Kapitel erfahren Sie, welche Anpassungen an den Standardeinstellungen dieser Dienste Sie vornehmen müssen, um anschließend die PPP-Webanwendung innerhalb dieser Infrastruktur installieren zu können.
MariaDB
Damit das Zusammenspiel von PPP und dem MariaDB-Server funktioniert, müssen in der Datei C:\Program Files\MariaDB 10.3\data\my.ini im Abschnitt „[mysqld]“ im Vergleich zur Standard-Installation die folgenden Einstellungen ergänzt bzw. auf die angegebenen Werte geändert werden.
Beachten Sie bitte hierbei, dass sich alle u. g. Einstellungen prinzipiell auf den kompletten MariaDB-Server auswirken. Wird dieser nicht ausschließlich für die Speicherung der Daten der PICTURE-Prozessplattform verwendet, prüfen Sie bitte unbedingt die Auswirkungen dieser Einstellungen auf die anderen Client-Anwendungen dieses Servers!
Timeouts
interactive_timeout=87000 wait_timeout=87000
Die o. g. Timeouts bestimmen, nach wie vielen Sekunden (inaktive) Datenbankverbindungen vom MariaDB-Server getrennt werden (d. h. im konkreten Fall nach etwas mehr als einem Tag).
Um ein ordnungsgemäßes Funktionieren der PICTURE-Prozessplattform zu gewährleisten, muss die PPP bei Verwendung der o. g. Werte einmal pro Tag neu gestartet werden. Falls Sie alle in diesem Dokument dargestellten Installations-Schritte vollständig durcharbeiten, ist dies gewährleistet (vgl. Abschnitt "5 - Betriebs- und Wartungsaufgaben (v3.x)").
Anzahl Verbindungen
max_user_connections=30
Dieser Wert ist abhängig von der erwarteten Anzahl gleichzeitiger Nutzer der PPP. Kalkulieren Sie als Faustregel mit einer Verbindung für jeden gleichzeitig eingeloggten Benutzer und addieren Sie einen Puffer für Datenbankverbindungen zu administrativen Zwecken (Admin-Konsole für Ad-Hoc-Zugriffe, Backup etc.)
Tabellennamen
lower_case_table_names=1
Wenn Datenbankschemata verwendet werden sollen, die auf Windows-Systemen bearbeitet wurden (z. B. initiale Erstellung, Wartung o. ä; dies betrifft insb. die von der PICTURE GmbH bereitgestellten Vorlagen für neue Mandanten), verwenden Sie unbedingt diese Einstellung. Dadurch werden Probleme aufgrund der unterschiedlichen Case-Sensitivität von Dateinamen zwischen den Dateisystemen beider Plattformen vermieden.
Paketgröße
max_allowed_packet=32M
Dieser Wert bestimmt die maximale Größe von Kommunikationspaketen für den Datenaustausch zwischen DB-Client und DB-Server.
Zeichensatz
character_set_server=utf8mb4
Dieser Wert bestimmt den Zeichensatz, der standardmäßig beim Anlegen neuer Datenbanken verwendet wird, sofern im entsprechenden SQL-Statement keine spezifischen Angaben zum Zeichensatz gemacht werden. Die Angabe "utf8mb4" ist wichtig, damit der von der PICTURE-Prozessplattform intern verwendete JDBC-Datenbanktreiber beim Aufbau von Datenbankverbindungen mit dem Server den korrekten für die Verbindung zu verwendenden Zeichensatz aushandelt, der erforderlich ist, um Daten aus dem kompletten Spektrum des Unicode-Zeichensatzes in der Datenbank speichern zu können. Standardmäßig sollte dieser Wert bereits gesetzt sein.
Starten Sie abschließend den MySQL-Server zur Aktivierung der geänderten Einstellungen mit der Dienste-Applikation des Windows Servers neu.
Tomcat
JVM-Optionen setzen
Um ein ordnungsgemäßes Funktionieren der PICTURE-Prozessplattform sicherzustellen, müssen einige Optionen der Instanz der Java Virtual Machine (JVM) angepasst werden, welche vom Tomcat-Server benutzt wird. Konfigurieren Sie dazu mit der Tomcat-Applikation Apache Tomcat 9.0 Tomcat9 → Configure Tomcat die Java Options auf der Registerkarte Java.
JAVA_OPTS für Tomcat-Start (Beispielwerte, bitte ggf. anpassen)
-Xmx2g -XX:ReservedCodeCacheSize=128m -Dppp.config_directory=C:\PICTURE\config -Duser.timezone=CET -Duser.country=DE -Djxl.nogc=true -Djavax.net.ssl.trustStore=C:\Program Files\Apache Software Foundation\Tomcat 9.0\conf\truststore.jks -Djavax.net.ssl.trustStorePassword=StrengGeheim1234!
Im Einzelnen sind folgende Einstellungen für den Betrieb der PPP relevant:
Einstellung | Bedeutung | Beispielwert |
---|---|---|
-Xmx | Maximale Größe des Java-Heapspeichers. Der Bedarf wird maßgeblich beeinflusst durch die zu unterstützende Anzahl paralleler Nutzer. | -Xmx2g (Szenario "Kleine Arbeitsgruppe"), |
-XX:ReservedCodeCacheSize | Größe des Code Caches während der Compilierung. Beim Parallelbetrieb vieler Mandanten (> 50) reicht die Standard-Einstellung (i.d.R. 48 MB) ggf. nicht aus und es muss ein größerer Wert gesetzt werden. Sollen nur einzelne Mandanten betrieben werden, kann die Einstellung weggelassen werden. | -XX:ReservedCodeCacheSize=128m |
-Dppp.config_directory | Verzeichnis, unterhalb dessen die Konfigurationsverzeichnisse der einzelnen PPP-Mandanten abgelegt werden | -Dppp.config_directory=C:\PICTURE\config |
-Duser.timezone | Zeitzone, von welcher der Server betrieben wird | -Duser.timezone=CET |
-Duser.country | Locale-Einstellung (beeinflusst Formatierung von Zahlen, Währungsangaben etc.) | -Duser.country=DE |
-Djxl.nogc | Konfiguriert das Garbage-Collection-Verhalten der Drittanbieter-Bibliothek "JExcelAPI", welche für Excel-Exporte verwendet wird. Hier ist unbedingt die Einstellung "true" zur Deaktivierung der expliziten GC-Aufrufe durch JExcelAPI vorzunehmen, sodass ausschließlich die regulären, automatisch durch die JVM ausgelösten GC-Läufe durchgeführt werden. Andernfalls kann es im Server-Betrieb zu signifikanten Performance-Einbußen bis hin zum Blockieren der kompletten Tomcat-Instanz für mehrere Sekunden kommen, sobald Excel-Exporte und Berichte ausgeführt werden. | -Djxl.nogc=true |
-Djavax.net.ssl.trustStore | (optional) Pfad zur TrustStore-Datei, in welcher vertrauenswürdige Zertifikate für SSL-verschlüsselte Verbindungen gespeichert werden. Die angegebene Datei muss Zertifikate für alle Ziel-Domains beinhalteten, zu denen durch die PPP SSL-geschützte Verbindungen aufgebaut werden sollen (z.B. SMTP-Server, über den automatisch generierte E-Mails verschickt werden). Wenn die PPP keine solchen SSL-geschützten Verbindungen zu Endpunkten aufbauen muss, die über kein Zertifikat verfügen, denen das JRE standardmäßig vertraut, kann diese Einstellung entfallen. | -Djavax.net.ssl.trustStore=C:\Program Files\Apache Software Foundation\Tomcat 9.0\conf\truststore.jks |
-Djavax.net.ssl.trustStorePassword | (optional: kann entfallen, wenn kein TrustStore benötigt wird) Passwort zum Öffnen der o.g. TrustStore-Datei | -Djavax.net.ssl.trustStorePassword=StrengGeheim1234! |
Die hier verwendeten JVM-Einstellungen bzgl. der Speicherbereiche sind Erfahrungswerte, mit denen i.d.R. ein problemloser Betrieb im Rahmen der im Abschnitt "Hardwareanforderungen" skizzierten Einsatz-Szenarien möglich ist. Treten im Live-Betrieb Fehler auf, welche auf zu gering dimensionierte Speicherbereiche hindeuten, passen Sie die Werte ggf. an. Hintergrundinformationen zur Bedeutung der einzelnen JVM-Parameter finden Sie unter http://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html.
Starttyp des Apache-Server-Dienstes ändern
Damit der Tomcat-Server im Falle eines Neustart Ihres Windows Servers automatisch gestartet wird, passen Sie noch den Starttyp des Apache-Dienstes an. Öffnen Sie dazu die Dienste-Applikation des Windows-Servers und bearbeiten Sie die Eigenschaften des Dienstes Apache Tomcat 9.0 Tomcat9. Ändern Sie den Starttyp von Manuell auf Automatisch.