Wiki-Quellcode von Systemvoraussetzung


Zeige letzte Bearbeiter
1 {{content/}}
2
3 Der {{fcserver/}} wird als Java Webanwendung durch einen Java Web-Container/Applikationsserver ausgeführt.
4
5 == Software ==
6
7 === Server ===
8
9 Für den Betrieb des {{fcserver case="gen"/}} ist folgende Software erforderlich:
10
11 * Oracle Java JDK oder Open JDK in der Version 11
12 * Apache Tomcat in Version 9 (Minor-Version 9.0.31 oder höher)
13 * Andere Applikationsserver sind möglich, werden jedoch nicht in Rahmen des allgemeinen Supports unterstützt.
14 * Bitte beachten Sie ggf. nötige Konfigurationen beim Betrieb des Anwendungsservers hinter einem Load-Balancer, Revers-Proxy o.ä. (siehe [[hier>>doc:IntermediateServers||target="_blank"]]).
15
16 {{info}}
17 Bei der Tomcat Version 9.0.31 wurden Performance-Probleme im Zusammenhang mit {{formcycle/}} festgestellt.
18 {{/info}}
19
20 {{info}}
21 Ältere Java 11 Releases [[enthalten einen Fehler in der SSLEngine>>https://bugs.openjdk.org/browse/JDK-8241054]], welcher unter bestimmten Umständen beim Aufruf von URLs über SSL zu Dead Loops führen kann, welche sich in einer hohen CPU-Auslastung äußern. Dieser Fehler wurde im Java 11 Release 11.0.8 offiziell behoben, weshalb von der Verwendung von Java 11 Releases bis einschließlich 11.0.7 abgeraten wird.
22 {{/info}}
23
24 {{info}}
25 Bei der Verwendung unterschiedlicher Java-Patchstände für Master- und Frontend-Server, kann nicht grundsätzlich ausgeschlossen werden, dass es zu Problemen kommt. Dies ist insbesondere bei der Verwendung unterschiedlicher Betriebssysteme für Master- und Frontend-Server (z.B. Linux für Frontend-Server und Windows für Master-Server) zu beachten, wo je nach Distribution von Betriebssystem und Java zum Teil keine Java-Version mit exakt dem gleichen Patchstand zur Verfügung steht.
26 {{/info}}
27
28 {{box}}
29 Bei Kunden-Installationen werden in der Regel nachfolgende Konfigurationen eingesetzt.
30
31 Windows (MS Windows Server 2019 Standard): **Eclipse Temurin 11 (LTS), JVM HotSpot**
32 Linux (Debian 11): **OpenJDK 11**
33 Anwendungs-Server: **Apache Tomcat 9**
34 {{/box}}
35
36 === Datenbanken ===
37
38 Bei der Installation muss bereits eine Datenbank vorhanden sein. Der Datenbankbenutzer benötigt für diese Datenbank/dieses Schema (FORMCYCLE Systemdatenbank) Rechte als „DB Owner“. Die vorhandene Datenbank/das Schema benötigt eine UTF-8 //collation//, die zwischen Groß- und Kleinschreibung unterscheidet, etwa //utf8_bin.//
39
40 * MySQL ab Version 5.1
41 * MS SQL ab Version 2008 R2
42 * Oracle ab Version 11
43 * PostgreSQL ab Version 9.1
44 * MariaDB ab Version 10
45
46 {{box}}
47 Bei Kunden-Installationen werden in der Regel nachfolgende Konfigurationen eingesetzt.
48
49 Windows: **MS** **SQL Server 2019 Standard Edition**
50 Linux: **MariaDB**
51 {{/box}}
52
53 === Browser (zur Administration) ===
54
55 {{formcycle/}} läuft mit allen aktuellen Browsern. Wir empfehlen auch aus Sicherheitsgründen die Verwendungen einer aktuellen Version der folgenden Browser:
56
57 * Microsoft Edge
58 * Mozilla Firefox (**empfohlen**)
59 * Google Chrome
60
61 Der Internet Explorer und ältere Versionen von Edge werden im Backend nicht mehr unterstützt. Es kann hier zu Fehlern in der Darstellung kommen.
62
63 == Hardware ==
64
65 Die Hardware ist abhängig vom Einsatzgebiet des Servers, auf dem {{formcycle/}} läuft. Nachfolgende Angaben beziehen sich auf folgendes Szenario:
66
67 * 1 Mandant
68 * 40 Formulare
69 * 1000 Formulareingänge pro Tag
70 * 1000 Statuswechsel (Bearbeitung der Vorgänge durch einen Sachbearbeiter) pro Tag
71 * 500 bei der Statusverarbeitung generierten Dateien (z.B. {{smallcaps}}Pdf{{/smallcaps}}, Word ...)
72 * 10 gleichzeitig angemeldete Sachbearbeiter
73
74 Dann sollte wenigstens folgendes an Hardware und Betriebssystem bereitstehen:
75
76 * Windows 2012 R2 (oder neuer) oder Linux (64 Bit)
77 * 2 x QuadCore Prozessoren 2,8 GHz
78 * 8 GB RAM (4 GB für den Applikationserver)
79 * 10 GB für {{formcycle/}}
80
81 Hierbei ist die Datenbank nicht mit einberechnet. Diese kann sich auch auf einem separaten Server befinden.
82
83 == Datenbankgröße ==
84
85 Die Größe der von {{formcycle/}} verwendeten Datenbank hängt sehr stark von der Art und Weise ab, wie viele und welche Daten an {{formcycle/}} gesendet und verarbeitet werden. Eine Abschätzung kann daher immer nur für ein bestimmtes Einsatzszenario vorgenommen werden.
86
87 === Einflussfaktoren ===
88
89 Grundsätzlich werden alle von {{formcycle/}} genutzten Daten in der Datenbank gespeichert. Unter anderem sind das die folgenden Dinge:
90
91 * Formulare (d.h. auch eventuell darin enthaltene Bilder)
92 * [[Layouts>>doc:Formcycle.UserInterface.FilesAndTemplates.Layout]] (d.h. auch im CSS in Base64-Form enthaltene Bilder und Schriftarten)
93 * In den {{formcycle/}} Mandanten und Formularen gespeicherte [[Dateien>>doc:Formcycle.UserInterface.FilesAndTemplates.Files]]
94 * Alle von Nutzern abgesendete Formulardaten, inklusive allem, was in [[Formularelemente>>doc:Formcycle.Designer.Form.FormElements.WebHome]] eingetragen wurde und alle mitgesendeten [[Dateien>>doc:Formcycle.Designer.Form.FormElements.Upload]]
95 * Im [[Workflow>>doc:Formcycle.Designer.Workflow.WebHome]] erstellte Dateien wie zum Beispiel [[PDF-Quittungen>>doc:Formcycle.Designer.Workflow.Actions.FillPdfDocument.WebHome]], welche an [[Vorgänge>>doc:Terminology.WebHome||anchor="process"]] angehängt wurden.
96 * Auch die in {{formcycle/}} verwendeten [[Plugins>>doc:Formcycle.SystemSettings.UserInterface.SystemPlugins]] werden vollständig in der Datenbank gespeichert.
97 * Alle anderen Konfigurationsparameter, wie [[Übersetzungen>>doc:Formcycle.UserInterface.FilesAndTemplates.I18nVariables]] etc., welche zusammen genommen auch eine gewisse Größe erreichen können.
98
99 === Abschätzung des Platzbedarfs ===
100
101 Anhand des jeweiligen Nutzungsprofils kann unter Berücksichtigung der oben genannten Punkte eine grobe Abschätzung vorgenommen werden. Der von {{formcycle/}} für Mandanteinstellungen und Formulare (ohne Bilder und Schriftarten) verwendete Speicherplatz bewegt sich pro Einstellung und Formular jeweils im Kilobyte-Bereich und addiert sich üblicherweise zu einigen Megabyte Gesamtgröße. Zusammen mit den auf dem {{formcycle/}} Server installierten Plugins, Logos und Schriftarten ist der "statische" Speicherbedarf ohne Berücksichtigung eingegangener Formulardaten in vielen Fällen nicht größer als 100 Megabyte.
102
103 Im folgenden einfachen Beispiel wird anhand der zu erwartenden Formulareingänge grob abgeschätzt, wieviel Speicherplatz nach einem Jahr Betrieb benötigt werden könnte, wobei die Zahlen fiktiv sind, sich aber an realen Erfahrungswerten orientieren:
104
105 : Ein {{formcycle/}} hat in einem Mandanten 10 Formulare mit jeweils ca. 30 Standard-Formularelementen und kommt mit mehreren installierten Plugins auf eine Größe von 100 Megabyte. Pro Monat gehen rund 1000 Vorgänge ein, welche im Durchschnitt 500kB an mitgesendeten Dateien aufweisen und jeweils in der Verarbeitung eine durchschnittlich 150 Kilobyte große PDF-Quittung erzeugen. Erzeugt werden pro Vorgang also ca. 650 Kilobyte an Daten plus einige Kilobyte für die Daten der anderen Formularfelder. Wenn man dementsprechend mit 700 Kilobyte pro Vorgang rechnet, würde die Datenbank Monat für Monat um ca. 700 Megabyte wachsen und nach einem Jahr würde die {{formcycle/}} Datenbank in diesem Beispiel bereits ca. 8,5 Gigabyte groß sein.
106
107 Grundsätzlich ist {{formcycle/}} nicht als Dokumentenmanagement-Lösung (DMS) zu verstehen, welche eingehende Daten speichert und archiviert, sondern es dient dem Entgegennehmen und Bearbeiten von Formulardaten. Aus verfahrenstechnischen und gegebenenfalls auch rechtlichen Gründen sollten eingegangene Vorgänge an Archivierungslösungen gesendet oder/und gelöscht werden, sobald diese nicht mehr für eine Bearbeitung direkt im {{formcycle/}} benötigt werden. Hierdurch kann sich der benötigte Platz in der Datenbank entsprechend verringern, weil zum Beispiel nach dem erfolgreichen Durchlaufen eines Bewilligungsprozesses die Metadaten des fertig bearbeiteten Vorgangs automatisch an ein anderes System gesendet und die Daten des Vorgangs gelöscht werden. Dies könnte beispielsweise auch genau 14 Tage nach der Bewilligung geschehen, weil zu diesem Zeitpunkt nicht mehr mit einer Rückfrage und erneuten Bearbeitung des Vorgangs gerechnet werden muss.
108
109 === Weitergehende Hinweise ===
110
111 Aufgrund von Kundenerfahrungen empfehlen wir, bei der Benutzung einer Datenbank mit einer festen Maximalgröße (wie zum Beispiel der kostenlosen Express Edition des //Microsoft SQL Servers//) sorgfältig zu überlegen, ob diese Maximalgröße langfristig ausreicht. Zusätzlich empfiehlt es sich, regelmäßig die Größe zu überprüfen, um nicht überraschend an diese Grenze zu kommen und wenn nötig noch genügend Vorlauf zu haben, um ohne Beeinträchtigung des laufenden Betriebs auf eine andere Datenbanklösung umsteigen zu können.
112
113 Weitere Einflussfaktoren auf den von {{formcycle/}} real in der Datenbank benötigten Platz sind zudem die verwendete Zeichencodierung (utf8, utf8mb4) und der genutzte Datenbanktyp, wobei diese Einflüsse eher klein sind.