Infrastruktur

Erstellung einer Infrastruktur

Für den HHZ Hackathon wurde ein virtueller Linux Server mit dem Betriebssystem Ubuntu 18.04 LTS eingerichet.

Folgende Anwendungen wurden installiert und konfiguriert:

  • Webserver (Apache 2.4.29)

  • Datenbank (MySQLServer 14.14)

  • Datenbank-GUI (PhpMyAdmin 8.42)

Die Homepage ist unter folgender URL erreichbar: http://alexa.itdhosting.de/

Um das Set-Up simpel zu halten wurde bewusst auf eine SSL-Verschlüsselung verzichtet.

Webserver

Apache wird als Kommunikationsschnittstelle genutzt, die auf dem HTTP-Protokoll basiert. Der Apache dient hauptsächlich als Webserver und stellt als dieser Webseiten oder allgemein Dateien und Dokumente in einem bestimmten Umfeld bereit.

Das Problem war, dass ein Alexa Skill kann nicht eigenständig auf eine MySQL Datenbank zugreifen kann und somit keine Produkte auf die Einkaufsliste gesetzt werden können. Durch die Schnittstelle zwischen dem Webserver und der Datenbank können die Produkte in der Datenbank abgespeichert und durch die App abgerufen werden.

Weiterhin soll durch Zwischenschalten einer Schnittstelle verhindert werden, dass die Logik auf Seite von Alexa zu stark an die Datenbank gekoppelt ist. Indem ein Apache Webserver für den Abruf und die Bearbeitung von Daten auf Serverseite eingerichtet wird, könnten Strukturänderungen an der Datenbank gemeinsam mit einer Änderung am PHP Code deployt werden, wodurch der Alexa Skill nicht notwendigerweise angepasst werden muss.

Datenbank

MySQL ist ein relationales Datenbankverwaltungssystem. Die Datenbank ist in der Regel für die Datenspeicherung von Webservices zuständig. In der Datenbank ist dafür zuständig die gewünschten Produkte in einer Liste zu speichern. Die Datenbank ist nachher die Schnittstelle zur App. Dafür nutzt die App die Daten aus der Datenbank und bereitet diese grafisch auf.

Last updated