Definition: Webservice

Dieser Artikel erläutert was Webservices sind, sowie welche Vor- und Nachteile diese bieten. Ein Webservice ist ein Dienst, welcher die Zusammenarbeit verschiedener Software-Anwendungen ermöglichen soll, die auf verschiedenen Plattformen laufen. Beispielsweise könnten durch Webservices Anwendungen mit einander kommunizieren, selbst wenn diese in unterschiedlichen Programmiersprachen geschrieben sind oder auf unterschiedlicher Hardware basieren. Damit dies funktioniert setzen Webservices auf Standards wie zum Beispiel XML. Genutzte Standards und Protokolle der Webservices Damit Webservices überhaupt gefunden werden können, wird auf dem Verzeichnisdienst "Universal Description, Discovery and Integration" (UDDI) zurückgegriffen. In einer UDDI-Datenbank kann sich ein Webservice registrieren und dort von einem Client gesucht und gefunden werden. Die Kommunikation zwischen Client und Webservice wird durch das Netwerkprotokoll "SOAP" ermöglicht. SOAP basiert auf der XML-Technologie. Wenn ein Client eine Funktion eines Webservice nutzen möchte, sendet er eine SOAP Message (ein XML-Dokument) an den Webservice. Der Webservice antwortet wiederum mit einer SOAP Message und liefert das Ergebnis zurück. Ein weiteres genutztes Protokoll ist WSDL. Genau wie SOAP basiert auch WSDL auf XML. WSDL hat die Aufgabe den Webservice zu beschreiben. Hierbei werden Name, Funktionen, Parameter sowie die URL unter welcher der Webservice gefunden werden kann festgehalten. Der Client enthält durch WSDL alle notwendigen Informationen um den Webservice zu nutzen. Vorteile von Webservices Webservices basieren auf Standards und sind deshalb in der Software-Industrie besonders beliebt. Ein weiterer Vorteil ist die Interoperabilität. Also die Fähigkeit mit Systemen zusammen zu arbeiten, die auf unterschiedlichen Plattformen basieren. Nachteile von Webservies Die Kommunikation findet über XML-Dokumente statt. Diese entsprechen zwar einem häufig genutzten Standard, die Bearbeitung der XML-Dateien ist jedoch sehr rechenintensiv. Zudem sind die XML-Dateien sehr groß, so dass die Versendung von Datenpaketen verlangsamt wird. Abgrenzung: Webservice und Webanwendung Webservices werden häufig fälschlicher Weise mit Webanwendungen gleichgesetzt. Ein wesentlicher Unterschied zwischen beiden Begriffen ist, dass Webanwendungen für Menschen (User) geschrieben sind. Beispiele für Webanwendungen sind Suchmaschinen, Browsergames oder Content Management Systeme (CMS). Webservices sind hingegen nicht für User programmiert. Sie dienen dem automatisierten Datenaustausch von Softwaresystemen.

Weitere interessante Artikel: