diff --git a/chapters/thesis/chapter03.tex b/chapters/thesis/chapter03.tex index 60d83a3..c8efcbf 100644 --- a/chapters/thesis/chapter03.tex +++ b/chapters/thesis/chapter03.tex @@ -14,10 +14,40 @@ \label{sec:concept:viewsystem} % Untersuchung des Servers +Für die Untersuchung des Systems wird der direkte Zugang zum Server benötigt. Hierbei werden zuerst die im Kapitel +\ref{sec:basics:services} beschriebenen Einstellungen überprüft. + +Zuerst wird am PostgreSQL-Server die Konfiguration der Speicher mit der Vorgabe für Produktivsystem abgeglichen. +Hierunter fallen die Einstellungen für die \textit{shared\_buffers}, der bei einem Arbeitsspeicher von mehr als 1 GB +ca. 25\% des Arbeitsspeicher definiert sein soll \cite{PostgresC20.4:2024}. + +\mytodos{die anderen Speicher abarbeiten?} + +Dann wird mit dem Systemtools wie den Konsolenanwendungen \textit{htop} und \textit{free}, die Auslastung des Servers +überprüft. Hierbei ist die CPU-Leistung, der aktuell genutzte Arbeitsspeicher, sowie die Zugriffe auf die Festplatte +wichtige Faktoren zur Bewertung. + +Die CPU-Leistung sollte im Schnitt nicht die 70\% überschreiten, für kurze Spitzen wäre dies zulässig. Da sonst der +Server an seiner Leistungsgrenze arbeitet und dadurch es nicht mehr schafft die gestellten Anfragen schnell genug +abzuarbeiten. + +Da unter Linux der Arbeitsspeicher nicht mehr direkt freigegeben wird, ist hier die Page-Datei der wichtigere Indikator. +Wenn dieses in Verwendung ist, dann benötigt die aktuell laufenden Programme mehr Arbeitsspeicher als vorhanden, wodurch +der aktuell nicht verwendete in die Page-Datei ausgelagert wird. Hierdurch erhöhen sich die Zugriffszeiten auf diese +Elemente drastisch. + +Die Zugriffsgeschwindigkeit, die Zugriffszeit sowie die Warteschlange an der Festplatte zeigt deren Belastungsgrenze auf. +Hierbei kann es mehrere Faktoren geben. Zum einem führt das Paging des Arbeitsspeicher zu erhöhten Zugriffen. Ein zu +klein gewählter Cache oder gar zu wenig Arbeitsspeicher erhöhen die Zugriffe auf die Festplatte, da weniger +zwischengespeichert werden kann und daher diese Daten immer wieder direkt von der Festplatte geladen werden müssen. + +\mytodos{Bespreibung der untersuchung von Glassfisch? ode lieber später} \section{Das Vorgehen der Optimierung} \label{sec:concept:optimizing} +\mytodos{Bespreibung der untersuchung von Glassfisch? ode lieber später} + % Anhand der Umfragen werden die verschiedenen Seiten ermittelt und mit den Tools überprüft % Während dessen kann über ein Script die Seite automatisiert abgefragt und das Trace aktiv sind % je nach erkentnis mss dann der Lösungsweg beschritten werden diff --git a/expose-ref.bib b/expose-ref.bib index 92f0e4b..0515180 100644 --- a/expose-ref.bib +++ b/expose-ref.bib @@ -48,6 +48,12 @@ urldate = {2023-12-27} }, +%@online{PostgresC20.4:2024, + year = 2024, + url = {https://www.postgresql.org/docs/current/runtime-config-resource.html}, + urldate = {2024-03-27} +}, + % File: 978-1-4842-3546-1.pdf @BOOK{Sharan2018, AUTHOR = {Sharan, Kishori}, diff --git a/frontbackmatter/thesis/Acronyms.tex b/frontbackmatter/thesis/Acronyms.tex index cf53322..a14953d 100644 --- a/frontbackmatter/thesis/Acronyms.tex +++ b/frontbackmatter/thesis/Acronyms.tex @@ -15,6 +15,7 @@ \acro{JPA}{Java Persistence API} \acro{API}{Application Programming Interface} \acro{UML}{Unified Modeling Language} + \acro{GB}{Gigabyte} \end{acronym} \cleardoublepage diff --git a/thesis.pdf b/thesis.pdf index 4ecb586..61f156d 100644 Binary files a/thesis.pdf and b/thesis.pdf differ