Architecture

Architektur, die [Architektúr]

  1. Baukunst [als wissenschaftliche Disziplin]
    [mehr oder weniger kunstgerechter] Aufbau und [künstlerische] Gestaltung von Bauwerken
  2. Konstruktion, Struktur des Aufbaus
  3. Gesamtheit von Erzeugnissen der Baukunst (besonders eines Volkes, Bereichs, Stils, einer Zeit); Baustil

Die Systemarchitektur von OPTANO

Der Begriff Architektur stammt vom lateinischen „architectura“. Planvolles Entwerfen und Konstruieren von Gebäuden ist ursprünglich zentraler Inhalt der Architektur. Doch auch bei komplexen IT-Systemen ist eine Systemarchitektur zwingend erforderlich: Beziehungen und Schnittstellen zwischen den Elementen des Systems und zur Umgebung werden identifiziert und strukturiert, Sicherheits- und Transaktionskonzepte festgelegt. OPTANO setzt sowohl auf die „einfache“ Client-Server-Architektur auf, als auch auf eine Systemarchitektur mit Application Server als optionaler Baustein.

„Einfache“ Client-Server-Architektur

Um mehreren Benutzern Zugriffsmöglichkeiten auf die Datenbank geben zu können, verwaltet beim Client-Server-Modell der Datenbankserver als zentrale Stelle die Daten. Die Benutzer verwenden Clients um Zugriff zu bekommen – als Programm oder komplettes System. Die Funktionalität (Anwendungslogik und User-Interface) ist hierbei hauptsächlich im Client implementiert. Die Ressourcen, die die Clients vom Datenbankserver anfordern, setzt dieser direkt ein. Es werden somit keine anderen Anwendungen in Anspruch genommen.

OPTANO client-server-system

Abbildung – OPTANO Client-Server-Architektur

Das Client-Server-Modell, wie hier gezeigt, ist vergleichsweise einfach zu erstellen, bringt jedoch einige Nachteile mit sich. Der Client, der den größten Teil der Arbeit erledigt, muss leistungsstark sein. Die Installation und Änderungen der Software müssen auf jedem Client (automatisch oder manuell) aufgespielt werden. Datenintensive Operationen mit einem hohen Datentransfer können zur Überlastung des Netzwerkes führen. Der direkte Datenzugriff der Clients auf den Datenbankserver stellt – vor allem bei Enterprise-Applikationen – zudem ein Sicherheitsrisiko dar.

Client-Server-Architektur mit Application Server

Um den Nachteilen der „einfachen“ Client-Server-Architektur zu begegnen, kann ein weiterer Baustein dem System hinzugefügt werden – der Application Server.

Was ist ein Application Server?

Der Application -Server (auch Applikationsserver oder Anwendungsserver) ist ein Serverprogramm im Client-Server-System, das die Ausführungsumgebung für ein Anwendungsprogramm bereitstellt. Der Client kann also nicht direkt auf den Datenbankserver zugreifen, sondern nur Daten über den Application Server abrufen und bearbeiten. Das Ergebnis ist eine Entkopplung von Client und Datenbankserver, die viele Vorteile mit sich bringt.

Application [æplɪˈkeɪʃn̩]
englisch für Applikation, die
(EDV) Anwenderprogramm

Server, der [ˈsœːɐ̯vɐ]
(EDV) Rechner, der für andere in einem Netzwerk mit ihm verbundene Systeme bestimmte Aufgaben übernimmt und von dem diese ganz oder teilweise abhängig sind

Application Server in der OPTANO Systemarchitektur

Diese Vorteile nutzen wir bei der Systemarchitektur von OPTANO mit dem optionalen Einsatz eines Application Servers. Der Anwendungsserver – installiert auf einem IIS (Internet Information Services von Microsoft) – bildet eine Sicherheitsgrenze zwischen Client und Datenbank. Der Datenbankzugriff ist über eine offene Schnittstelle (JSON) gekapselt. Da der Client keinen direkten Zugriff auf die Datenbank hat, wird so sichergestellt, dass er nur die für ihn freigegebenen Daten sehen und bearbeiten darf. Die Kommunikation des Clients mit dem Application Server erfolgt verschlüsselt über das HTTPS-Protokoll. Der in der OPTANO Systemarchitektur optional einsetzbare Scheduler greift ebenfalls über den Application Server auf den Datenbankserver zu.

OPTANO applicationserver

Abbildung – OPTANO Systemarchitektur mit Application Server (optional) 

Die OPTANO Systemarchitektur mit Application Server bietet neben dem Aspekt Sicherheit noch die Vorteile der Stabilität und Funktionalität.

Application Server bringt Sicherheit

Die Entkopplung von Client und Datenbankserver ist vor allem ein wichtiger Aspekt für Enterprise-Applikationen. Gerade in großen Unternehmen mit vielen Clients ist eine Kontrolle des Datenbankzugriffs unabdingbar. Der Client kann über den Application Server Transaktionen oder Authentifizierungen für Verzeichnisse und Datenbanken durchführen. Bei OPTANO ist die Windows Authentifizierung Standard, Erweiterungen sind aber möglich. OPTANO ist an diesem Punkt sogar so flexibel, dass auch andere Authentifizierungsmethoden einsetzbar sind. Der Application Server prüft zudem die Autorisierung des zugreifenden Clients. Durch das Festlegen von Rollen und Rechten, wird definiert: Wer darf was auf der Datenbank?

Application Server bietet Stabilität

Transaktionen und Authentifizierungen über den Application Server werden durch definierte Schnittstellen ermöglicht. Diese bieten Stabilität und Skalierbarkeit: Eine neue Schnittstelle ermöglicht den Client-Zugriff auf eine neue Version der Datenbank. Wenn die neuste Version aber nicht benötigt wird, bleibt die alte Schnittstelle erhalten.

Zudem ist der Anwendungsserver zustandslos. Das bedeutet, dass der Server weder den Nutzer noch die Session speichert, so dass bei einem Absturz bzw. Neustart oder dem Einsatz eines anderen Servers das System stabil weiterlaufen kann.

Application Server bedeutet Funktionalität

Bei einem System mit Application Server steht der höhere Aufwand in der Entwicklung einer einfacheren und besseren Skalierbarkeit und Wartung gegenüber. Zum einen ist die Skalierbarkeit höher – speziell bei Enterprise-Applikationen mittels Load Balancing: Wird durch viele Clients eine hohe Anfragedicht erzeugt, die einen einzelnen Application Server überlasten würde, ist der Einsatz mehrerer parallel arbeitender Anwendungsserver effektiv. Ein – den Application Servern vorgelagerter – Load Balancer verteilt die Anfragen und macht Anwendungen so skalierbar.

Zum anderen wird die Wartung für IT-Administratoren vereinfacht. Dieser kann via „Health Monitoring“ Informationen über den Zustand des Servers abfragen – auch automatisch.

Abschließend sei noch erwähnt, dass die gesamte OPTANO Systemarchitektur in der Cloud ausführbar ist und somit auch hier beste Skalierbarkeit bietet. Cloud-Service-Modelle wie SaaS (Software as a Service) oder IaaS (Infastructure as a Service) kommen hier zum Einsatz.

Der Application Server als optionaler Baustein der OPTANO Systemarchitektur bietet also eine Menge Vorteile. Wenn Sie mehr darüber erfahren möchten, kontaktieren Sie unsere Experten.

Auch interessant…