% !TeX root = ../../thesis.tex

\chapter{Performance-Untersuchung}
\label{ch:performance-checking}

\section{Auswertung des Systems}
\label{sec:performance-checking:system}

\mytodos{Hier die Auswertung des Produktionsservers unterbringen}

\section{Statistiken im PostgreSQL auswerten}
\label{sec:performance-checking:postgresql-statistics}

\mytodos{Logs auswerten, am besten vom Produktionsserver. Ebenfalls sollte man die Webseite
prüfen, die den Cache von OpenJPE auswerten}

\section{Überprüfung des PostgreSQL und Servers}
\label{sec:performance-checking:postgresql-checking}

\mytodos{Konfiguration vom Produktionsserver prüfen}

\section{Einbau und Aktivieren von Performance-Messung}
\label{sec:performance-checking:performance-measure}

Um eine Messung der Performance in der Webseite durchführen zu können, gibt es in \ac{JSF} die Möglichkeit, über eine
eigene Implementierung der Klasse \textbf{ViewDeclarationLanguageWrapper} sich in das generieren der Webseite
einzuhängen. Hierbei können die Funktionen für das erstellen, des bauen und das rendern der Webseite überschrieben
werden. In den überschriebenen Funktionen werden nun Laufzeiten gemessen und die ermittelten Zeiten mit einer Kennung
in die Log"=Datei eingetragen. Durch die Kennung, können die Zeiten im Nachgang über ein Script ermittelt und
ausgewertet werden.

\mytodos{die VdlLogger und VdlLoggerFactory-Klasse als Appendix anhängen}

Zusätzlich wird noch eine Implementierung der zugehörigen Factory"=Klasse \textbf{ViewDeclarationLanguageFactory}
benötigt. Durch diese Factory"=Klasse wird der eigentlichen Wrapper mit der Performance-Messung in die Bearbeitungsschicht
eingehängt. Diese Implementierung wird dann noch in der \textbf{faces-config.xml} eingetragen, wie das in
\ref{lst:activate-fatory} gezeigt wird, damit die Factory durch das System aufgerufen wird.

\begin{lstlisting}[language=xml,caption={Einbindung Factory},label=lst:activate-factory]
<factory>
  <view-declaration-language-factory>
    de.wedekind.utils.VdlLoggerFactory
  </view-declaration-language-factory>
</factor>
\end{lstlisting}

\mytodos{Einstellung am postgresql um die queries mit zu loggen}
