Für alle Unternehmen ist es zu einem der wichtigsten Erfolgsfaktoren geworden, auf Marktveränderungen und Kundenwünsche schnell
reagieren zu können: der Markt fordert immer kürzere Zeitspannen zwischen dem Eingang einer Bestellung und der Auslieferung, und die rasche Auswertung aktueller Kauftendenzen wird zum entscheidenden Faktor. Steigende
Flexibilität der Unternehmen ist auf Dauer nur mit einem entsprechenden DV-Konzept realisierbar. Die Dynamik des Unternehmens muß sich in der installierten DV-Landschaft widerspiegeln. Deshalb setzen immer mehr Firmen
auf das Konzept einer kooperativen Datenverarbeitung in Client-/Server-Netzen.
Die Definition
Die Client-/Server-Architektur ist definiert als eine Rollenverteilung im Rechnernetz, bei der der
Client eine Dienstleistung anfordert, die von einem Server erbracht wird. Die Klassifizierung des Clients und des Servers ist auf den ersten Blick ein Softwarethema. Die Rollenbegriffe werden jedoch auf die Hardware
übertragen und die Rechner, die an einem Client-Server-Verbund beteiligt sind, werden als Client- und Server-Systeme bezeichnet.
Unter dem Begriff Client-/Server-Architektur soll folgende Technik verstanden werden:
- Es gibt Clients, die Serverfunktionen aufrufen und
- es gibt Serversysteme, in denen eine oder mehrere Funktionen zur Verfügung gestellt werden.
Diese Funktionen können kommerzielle Funktionen sein, wie zentrale Buchhaltung oder zentrale Reisebuchung. Diese Funktionen können aber auch DV-Funktionen sein. Auf solchen DV-Funktionen beruhen eine Reihe
von verteilten Dienstleistungen (Services), die den Client-Anwendungen über Dialog- oder Programmschnittstellen zur Verfügung stehen. Solche Dienstleistungen sind zum Beispiel der Mail-Service zur Koordinierung
der Verteilung von Nachrichten oder Schriftstücken (EDI - Electronic Data Interchange) an die richtigen Adressaten, der Directory-Service, der Print-Service zur zentralen Verwaltung von Druckaufträgen und der
File-Service zum Ablegen und Wiederauffinden von Dokumenten aller Art in einer zentralen Dokumentenablage.
Typisch für solche Anwendungen ist, daß:
- die Initiative (der Aufruf des Services) vom Client ausgeht,
- ein Server von vielen Clients aufgerufen werden kann und somit hohe Transaktionsraten auftreten können,
- ein Server seinerseits auf mehrere Rechner verteilt sein kann und
- die Transaktionssicherheit, wie beispielsweise die Sicherheit einer konsistenten Datenhaltung trotz konkurrierender Zugriffe mehrerer Clients auf gemeinsame Datenbestände, nur innerhalb des Serversystems gegeben
ist.
Voraussetzung für das Client-Server-Computing in einer Multivendor-Umgebung ist die optimale Interoperabilität zwischen den Partnersystemen. Das setzt offene Architekturen voraus, die sich durch
standardkonforme Implementierungen bei den Schnittstellen und den Funktionen abzeichnen.
Die Anwendungsarchitektur
Client-/Server-Konzepte bedürfen einer konsequent modular aufgebauten
Anwendungsarchitektur, so daß sich eine Anwendung in einem Netz auf mehrere Rechnersysteme nach verschiedenen Kriterien aufteilen läßt:
- nach der optimalen Leistung,
- nach der maximalen Verfügbarkeit oder
- nach der minimalen Antwortzeit
Man unterscheidet folgende Anwendungsschwerpunkte für die Client-/Server-Architektur:
Entfernte oder verteilte Präsentation
Das bedeutet die Auslagerung der Benutzeroberfläche auf den
Client und die Nutzung der grafischen Windows-Systeme von Workstation oder PC, während die Verarbeitung und die Datenzugriffe weiterhin auf dem zentralen Server ablaufen.
Verteilte Anwendung
Dies
ist ein Architektur-Konzept, bei dem außer der Präsentation auch ein Teil der Anwendung dezentralisiert wird, während der andere Teil, der zum Beispiel eine höhere Verarbeitungsleistung benötigt bzw. Zugriffe auf die
zentrale Datenbank durchführt, auf dem Server-System abläuft.
Entfernte oder verteilte Datenhaltung
Hier liegt jene Form der Client-/Server-Anwendung vor, bei der die gesamte Verarbeitung
einschließlich der Präsentation auf dem Client-System abläuft, während der Server nur die Zugriffe zu den zentralen Daten durchführt.
Die Aufteilung der betriebswirtschaftlichen Anwendungen auf mehrere Systeme
ermöglicht eine Optimierung vorhandener Rechnerkapazitäten und die gemeinsame Nutzung bestehender Ressourcen. Jedem Computer im Netz wird die Aufgabe zuteil, für deren Lösung er sich am besten eignet. Diese
Architekturvariante erfordert bei der Konzeption große Sorgfalt. Es ist streng darauf zu achten, daß die einzelnen Funktionsteile weitestgehend autonom ablauffähig sind und nur Daten übergeben werden, die für einen
Auftrag tatsächlich benötigt werden. Wird hier nicht sauber gearbeitet, führt die Anwendungsaufteilung zu erhöhtem Datenaustausch und letztlich zu inperformanten Lösungen.
Bei einem korrekten Anwendungsdesign bringt
die Aufteilung eine Reihe von Vorteilen. Ergänzt man etwa den auf einen PC ausgelagerten Präsentationsteil einer Anwendung um Plausibilitätsprüfungen und weitere lokale Vorverarbeitungen, kann der Nachrichtenverkehr mit
den zentralen Server-Anwendungen reduziert werden. Dies entlastet das Netzwerk sowie den zentralen Server und optimiert das Antwortzeitverhalten am Arbeitsplatz, da der Großteil des Dialogs lokal abgehandelt wird.
Der Benutzer kann sich für seine lokale Client-Anwendung Daten aus einer zentralen Datenbank über die entfernte Datenhaltung verschaffen. Allerdings erfolgt jeder Datenbankzugriff über das Netz, was bei
komplexen Operationen zu einer hohen Netzbelastung führen kann. In diesem Fall ist es nützlich, die Gesamtaufgabe auf eine lokale Client-Anwendung und eine zentrale Datenbankanwendung zu verteilen, wobei jeweils die
lokale Client-Applikation die Gesamtabfrage an die Datenbank übergibt. Die intensive Kommunikation zwischen Datenbank und Anwendung läuft dann innerhalb des zentralen Datenbankrechners ab. Das lokale System erhält
lediglich das endgültige Ergebnis. Dieses Konzept entlastet das Netz und führt zu einer wirtschaftlicheren Auslastung der Rechner.
Der Nutzen
Laut einer Untersuchung der International Data
Corporation (IDC) sind Client-/Server-Strukturen weltweit in allen Branchen auf dem Vormarsch. Laut IDC-Analysen planen 16,9 Prozent der befragten Unternehmen in den USA, Frankreich, Großbritannien, Japan und
Deutschland eine Gesamtumstellung ihrer Infrastruktur innerhalb dieses Jahres, 19,5 Prozent wollen alle neuen Anwendungen in Client-/Server-Umgebungen integrieren, 23,4 Prozent befinden sich in der Testphase und 40,2
Prozent planen einen schrittweisen Übergang zu Client-/Server-Strukturen.
Als Gründe für die geplante Umstellung auf Client-/Server-Strukturen nennen die befragten Unternehmen übereinstimmend an erster Stelle die
Erwartung, die Anwenderproduktivität zu steigern und die Verfügbarkeit der Daten bzw. Informationen zu erhöhen. Als zweitwichtigstes Argument wird das Bestreben genannt, möglichst viele Betriebsumgebungen in
Client-/Server-Strukturen zu integrieren, was wiederum erklärt, warum gerade Betriebe mit heterogenen Systemumgebungen die Umstellung am offensivsten betreiben. An dritter und vierter Stelle rangieren die Hoffnung,
Geschäftsaktivitäten effizienter durchführen und Kosten bei Hardware und Software einsparen zu können. Viele Unternehmen sehen auch strategische Aspekte bzw. Nutzen und hoffen auf Wettbewerbsvorteile durch einen
schnelleren und besseren Kundenservice aufgrund neuer flexiblerer DV-Konzepte.