nbw-bt/Proposal/Folien/vortrag.tex
2014-09-26 15:45:57 +02:00

259 lines
7 KiB
TeX

\documentclass{beamer}
% Diese Datei enthält eine Lösungsvorlage für:
% - Vorträge bei einer (deutschsprachigen) Konferenz/einem Kolloquium.
% - Vortragslänge von etwa 20 Minuten.
% - Aussehen des Vortrags ist verschnörkelt/dekorativ.
% Copyright 2004 by Till Tantau <tantau@users.sourceforge.net>.
%
% In principle, this file can be redistributed and/or modified under
% the terms of the GNU Public License, version 2.
%
% However, this file is supposed to be a template to be modified
% for your own needs. For this reason, if you use this file as a
% template and not specifically distribute it as part of a another
% package/program, I grant the extra permission to freely copy and
% modify this file as you see fit and even to delete this copyright
% notice.
\mode<presentation>
{
\usetheme{Warsaw}
}
\usepackage[german]{babel}
\usepackage[utf8]{inputenc}
\usepackage{times}
\usepackage[T1]{fontenc}
\title[Perl-Monitoring] % (optional, nur bei langen Titeln nötig)
{Monitoring von Perl-basierten Web Anwendungen mit Kieker}
\subtitle{Proposal}
\author{Nis Wechselberg}
\institute[CAU Kiel] % (optional, aber oft nötig)
{
Institut für Informatik\\
Christian-Albrechts-Universität zu Kiel
}
\date{19. Dezember 2012}
% Folgendes sollte gelöscht werden, wenn man nicht am Anfang jedes
% Unterabschnitts die Gliederung nochmal sehen möchte.
\AtBeginSection[]
{
\begin{frame}<beamer>{Gliederung}
\tableofcontents[currentsection]
\end{frame}
}
% Falls Aufzählungen immer schrittweise gezeigt werden sollen, kann
% folgendes Kommando benutzt werden:
\beamerdefaultoverlayspecification{<+->}
\begin{document}
\begin{frame}
\titlepage
\end{frame}
\begin{frame}{Gliederung}
\tableofcontents
% Die Option [pausesections] könnte nützlich sein.
\end{frame}
% Einen Vortrag zu strukturieren ist nicht immer einfach. Die
% nachfolgende Struktur kann unangemessen sein. Hier ein paar Regeln,
% die für diese Lösungsvorlage gelten:
% - Es sollte genau zwei oder drei Abschnitte geben (neben der
% Zusammenfassung).
% - *Höchstens* drei Unterabschnitte pro Abschnitt.
% - Pro Rahmen sollte man zwischen 30s und 2min reden. Es sollte also
% 15 bis 30 Rahmen geben.
% - Konferenzteilnehmer wissen oft wenig von der Materie des
% Vortrags. Deshalb: vereinfachen!
% - In 20 Minuten ist es schon schwer genug, die Hauptbotschaft zu
% vermitteln. Deshalb sollten Details ausgelassen werden, selbst
% wenn dies zu Ungenauigkeiten oder Halbwahrheiten führt.
% - Falls man Details weglässt, die eigentlich wichtig für einen
% Beweis/Implementation sind, so sagt man dies einmal nüchtern. Alle
% werden damit glücklich sein.
\section{Motivation}
\subsection{Kielprints}
\begin{frame}{Kielprints}
\includegraphics[scale=0.17]{kielprints.png}[
\end{frame}
\begin{frame}{Projektbeschreibung}
\begin{itemize}
\item
Plattform zur Veröffentlichung von wissenschaftlichen Dokumenten (\emph{self archiving})
\item
Ergänzte und modifizierte Version von ePrints
\item
Betrieben durch das Helmholtz Zentrum für Ozeanforschung Kiel (GEOMAR)
\item
Erweiterung des OceanRep GEOMAR
\item
Über 14000 Veröffentlichungen von etwa 1000 Autoren
\end{itemize}
\end{frame}
\subsection{Beobachtete Performanceprobleme}
\begin{frame}{Benutzerperspektive}
\begin{itemize}
\item
Abrufen von Einträgen über die Plattform: \\[0.5cm]
\item
Erhöhte Antwortzeiten
\item
Langsame Suche in den Fachbereichen
\end{itemize}
\end{frame}
\begin{frame}{Administration/Betrieb}
\begin{itemize}
\item
Zur Zeit \emph{Vorberechnung} in der Nacht durch Cron-Job
\item
Trotzdem hohe Wartezeiten bei Seitenwechseln im Backend
\item
Beispiel: Beim Eintragen von neuen Publikationen über das Backend und hinzufügen von Autoren dauert die Generierung von Dropdown-Menüs etwa 10 Sekunden.
\end{itemize}
\end{frame}
\section{Technologien und Methoden}
\subsection{Performance-Monitoring}
\begin{frame}{Vorgehen bei Performance-Monitoring}
\begin{enumerate}
\item
Instrumentierung des Codes mit \emph{Probes}
\item
Ausführung des instrumentierten Codes
\item
Protokollierung von Monitoring Daten
\item
Auswertung der Daten mittels geeigneter Tools
\end{enumerate}
\end{frame}
\begin{frame}{Erfasste Daten}
\begin{itemize}
\item
Anwendungsdaten
\begin{itemize}
\item
Aufrufreihenfolge
\item
Aufrufhäufigkeiten
\item
Ausführungszeiten
\end{itemize}
\item
Systemdaten
\begin{itemize}
\item
CPU-Auslastung
\item
Arbeitsspeicher
\item
aktive Prozesse
\item
...
\end{itemize}
\end{itemize}
\end{frame}
\subsection{Kieker-Framework}
\begin{frame}{Kieker Monitoring Framework}
\begin{itemize}
\item Monitoring Tool aus diesem Lehrstuhl
\item Empfohlenes Tool im SPEC RG Software Repository
\end{itemize}
\includegraphics[scale=0.7]{kiekerComponentDiagram-woCloud-bw-w-record-newNames-withTraceAnalysis-colors.pdf}
\end{frame}
\begin{frame}{Überblick über Kieker}
\begin{itemize}
\item Aufteilung in \emph{Kieker.Monitoring} und \emph{Kieker.Analysis}
\item Kieker.Monitoring zur Instrumentierung und Überwachung
\item Kieker.Analysis zur Auswertung und Veranschaulichung
\item Kommunikation über Monitoring Log oder Stream\\[0.5cm]
\item Bisher keine Unterstützung für Perl
\end{itemize}
\end{frame}
\subsection{Programmiersprache Perl}
\begin{frame}{Programmiersprache Perl}
\begin{itemize}
\item imperative, plattformunabhängige, interpretierte Sprache
\item Entwickelt 1987, heute in Version 5.16 verfügbar
\item Sehr viele Freiheiten für Programmierer (freie Syntax)
\item Starke Funktionen für String-Manipulationen und Reguläre Ausdrücke
\item Direkte Integration in Webserver mittels CGI-Perl
\end{itemize}
\end{frame}
\section{Geplante Umsetzung}
\subsection{Architekturentwurf}
\begin{frame}{Neuimplementierungen in Perl}
\begin{itemize}
\item Implementierung von Monitoring Probes und Monitoring Writer
\item Ausgabe von Monitoring Records in Monitoring Log
\item Auswertung mit \emph{Kieker.Analysis}
\end{itemize}
\end{frame}
\begin{frame}{Architekturentwurf}
\includegraphics[scale=0.6]{Architektur.png}
\end{frame}
\subsection{Zeitplan}
\begin{frame}{Zeitplan}
\includegraphics[scale=0.27]{Gantt-Project.png}
\begin{itemize}
\item Implementierung der benötigten Funktionen bis 23.12.
\item Ab Mitte Januar zunächst Testinstrumentierung von Kielprints
\item Anschliessend Instrumentierung und Analyse im Produktivsystem
\end{itemize}
\end{frame}
\begin{frame}
\hfill
\begin{beamercolorbox}[rounded=true, center, shadow=true,sep=0.5cm]{block body}
Ich danke für Ihre Aufmerksamkeit!
\end{beamercolorbox}
\hfill\hfill
\end{frame}
\end{document}