Suche im Lexikon
Lexikon auf Ihrer Homepage Lexikon als Lesezeichen hinzufügen

Client

Der Titel dieses Artikels ist mehrdeutig. Zur gleichnamigen britischen Elektropop-Gruppe siehe Client (Band).

Ein Client (englisch client) oder eine clientseitige Anwendung läuft im Unterschied zur serverseitigen Anwendung nicht auf einem Server (zum Beispiel einem Webserver), sondern auf dem Rechner des Nutzers ab. Allerdings sind diese Clientanwendungen in aller Regel in eine Client-/Serverkommunikation eingebunden.

Inhaltsverzeichnis

Clientseitige Anwendungen

Wichtigste clientseitige Anwendungen sind die Clients selber, wie zum Beispiel Firefox, Safari oder Internet Explorer welche alle HTTP zur Datenkommunikation mit einem Webserver unterstützen.

Ein weiteres Beispiel sind Mail-Clients. Sie nehmen Kontakt zu einem Mailserver auf, um E-Mails von ihm abzuholen und über ihn zu versenden. Der Client muss nicht ständig in Betrieb oder mit einem Netzwerk verbunden sein, denn der Mailserver nimmt die eingehenden E-Mails entgegen.

Viele Clients werden nicht von Benutzern bedient, sondern arbeiten im Hintergrund als Systemdienst. Zum Beispiel DNS-Clients. Sie nehmen automatisch Verbindung mit DNS-Servern auf, wenn zu einem Namen wie de.wikipedia.org die Adresse (IP-Adresse) benötigt wird.

Das Ajax-Konzept findet bei clientseitigen Anwendungen die in HTML eingebettet sind eine wachsende Bedeutung. Andere Clientanwendungen welche über eigene proprietäre Clientserverprotokolle verfügen sind zum Beispiel der Citrixclient, oder der SAP-Client.

Zwischen einem Client und einem Server gibt es zur Datenübertragung und zur Interaktion ein definiertes Protokoll, welches in der Regel einem Request/Responseschema folgt. Durch eine clientseitige Programmierung kann das Request/Responseschema unterbrochen werden, indem bestimmte Funktionen wie zum Beispiel kurzzeitige Reaktionen auf Benutzerinteraktionen direkt clientseitig durchgeführt werden, ohne einen Client-/Serverrundlauf (Client-/Server Routtrip) auszulösen. Oft handelt es sich dabei um ein rekursives Konzept. In einer Clientanwendung (Webbrowser) läuft eine zweite Anwendung (zum Beispiel ein Javascript in der aktuellen HTML-Seite).

Meistens treten clientseitige Anwendungen in einer Mischform mit einer serverseitigen Anwendung auf.

Eine in diesem Bereich häufig verwendete Programmiersprache ist JavaScript. Der Quellcode wird in die HTML-Seite eingebaut und durch den Browser interpretiert. Eine Alternative dazu bietet beispielsweise die proprietäre Sprache VBScript des Softwareherstellers Microsoft.

Clientseitige vs. serverseitige Zustandspeicherung

Wichtig ist im Zusammenhang auch, wie der Kontext einer Benutzersitzung gespeichert werden kann. Zum Beispiel ist HTTP zustandslos (stateless), kann also serverseitig grundsätzlich keine Daten zwischen zwei Datenanforderungen memorisieren. Eine clientseitige Anwendung kann das Cookie-Konzept verwenden, um Informationen auf der Clientseite zu speichern, welche von einem clientseitige Folgescript zu einem späteren Zeitpunkt wieder ausgelesen werden. Cookies bieten allerdings keine Form der Datensicherheit und können z. B. auch von anwendungsfremder Spyware ausgelesen werden. Diese funktionale Lücke kann durch das Konzept eines serverseitigen Sessionmanagement geschlossen werden.

Die an sich zustandslose Client-/Serverkommunikation wird dadurch zu einem System in dem ein Sessionzustand auf dem Server über mehrere Datenanforderungen aufrechterhalten werden kann. Hierbei kann dann auch eine passwortgeschütze Datensicherheit gewährleistet werden.

Vorteile

  • Zur Lösung einiger Probleme (Gültigkeit von Formulareingaben) kann auf die Mitwirkung des Webservers verzichtet werden.
  • Es wird ein Dialog mit dem Benutzer ermöglicht
  • Die Ästhetik der Webseite kann verbessert werden (z. B. wechselnde Inhalte und Darstellung in Abhängigkeit von der Mausposition).

Nachteile

  • Der Quellcode ist für den Nutzer sichtbar und zugänglich. Das kann unter Umständen unerwünscht sein.

Hardware

Als Clients bezeichnet man auch jene Computer, die im Gegensatz zu anderen keine Server stellen. Die einheitliche Rolle ihrer Software im Rechnernetz wird sinnbildlich auf ihre Hardware übertragen. Man unterscheidet konventionelle Fat Clients und Thin Clients.

Impressum AGB Datenschutz KundenserviceMediadatenfreenet AGJobsSitemap
gekennzeichnet mit
JUSPROG e.V. - Jugendschutz
freenet ist Mitglied im JUSPROG e.V.