Zurück zur Skill-Übersicht

Skill-Wissen und Projektmarkt

Webservice

Freelancer, Projekte, Experten und Wissen rund um Webservice.

Kategorie

Backend

Einordnung

Webservice Freelancer, Projekte, Experten und Wissen auf jobtic.com

Webservice gehört zu den gefragtesten Kompetenzen im modernen IT-Projektmarkt. Unternehmen, Recruiter, Projektanbieter und Agenturen suchen kontinuierlich nach qualifizierten IT-Freelancern, Beratern, Entwicklern, Consultants, Administrators, Engineers und Spezialisten mit Erfahrung in Webservice.

Auf jobtic.com finden Unternehmen und Freelancer eine moderne Plattform für IT-Projekte, Projektvermittlung, Freelancer-Profile, Experten-Suche, Projektakquise und berufliche Vernetzung rund um Webservice und viele weitere Technologien, Tools, Systeme, Methoden und IT-Bereiche.

Wikipedia

Webservice

Artikel öffnen
Dieser Artikel behandelt Schnittstellen zur Maschine-zu-Maschine-Interaktion. Zu Diensten für Benutzer siehe Onlinedienst.
QS-Informatik
Beteilige dich an der Diskussion!
Dieser Artikel wurde wegen inhaltlicher Mängel auf der Qualitätssicherungsseite der Redaktion Informatik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Informatik auf ein akzeptables Niveau zu bringen. Hilf mit, die inhaltlichen Mängel dieses Artikels zu beseitigen, und beteilige dich an der Diskussion! (+)


Begründung: Der Artikel beschreibt eigentlich nur einen Webservice basierend auf dem RPC-Architekturstil. Viele Fakten in Bezug auf einen REST WS sind völlig falsch. Näheres ist auf der Diskussionsseite des Artikels angegeben.--195.243.27.84 09:49, 9. Mai 2012 (CEST)

Ein Webservice (auch Webdienst) stellt eine Schnittstelle für die Maschine-zu-Maschine- oder Anwendungs-Kommunikation über Rechnernetze wie das Internet zur Verfügung.[1] Dabei werden Daten ausgetauscht und auf entfernten Computern (Servern) Funktionen aufgerufen.

Jeder Webservice besitzt einen Uniform Resource Identifier (URI), über den er eindeutig identifizierbar ist. Außerdem enthält ein Webservice, je nach Implementierung, eine Schnittstellenbeschreibung in maschinenlesbarem Format, die definiert, wie mit dem Webservice zu interagieren ist, z. B. WSDL im XML-Format.

Die Kommunikation kann über Protokolle aus dem Internetkontext wie beispielsweise HTTP oder HTTPS erfolgen. Über diese Protokolle können Daten beispielsweise im XML- oder JSON-Format übertragen werden.[2][3]

Ein Webservice ist plattformunabhängig und steht in der Regel mehreren Programmen zum Aufrufen bereit.

Architektur

Im Allgemeinen senden Programme Anfragen an einen Webservice, woraufhin dort anfragespezifische Funktionen ausgelöst werden, z. B. Rückgabe oder Änderung gespeicherter Informationen. Typischerweise wird der Webservice auf einem anderen Rechner (Server) ausgeführt als das Programm, welches damit von einem Client aus interagiert.

Beispielsweise kann von einem Programm, welches hauptsächlich aus einer Benutzeroberfläche besteht, eine Anfrage nach Kartenmaterial für einen bestimmten Ausschnitt an einen Web Map Service gestellt werden. Als Antwort auf die Anfrage bekommt das Programm den angefragten Kartenausschnitt und präsentiert diesen auf der Benutzeroberfläche.

Webservices können aber auch Bestandteile von Softwaresystemen sein, die automatisiert Daten austauschen oder Funktionen auf entfernten Computern aufrufen.

Webservices orientieren sich an der serviceorientierten Architektur (SOA) und vereinen daher verteilte und objektorientierte Programmierstandards und richten sich auf betriebswirtschaftliche Lösungen im Internet.

Allgemein kann unterschieden werden zwischen

  • Nutzer (Servicekonsument)
  • (Service-)Anbieter
  • Verzeichnis.

Diese interagieren wie folgt: Der Anbieter veröffentlicht in einem Verzeichnis die Beschreibung seiner Dienste. Der Nutzer durchsucht das Verzeichnis und wählt den gewünschten Dienst aus. Nachdem eventuell weitere Protokolldetails ausgetauscht wurden, findet die dynamische Anbindung des Konsumenten an den Anbieter statt. Der Nutzer greift nun auf die Methoden der Webservices dieses Anbieters zurück.

Erreichbar sind Webservices über einen eindeutigen URI. Aufgrund der verwendeten plattformunabhängigen Standards ist es möglich, entfernte Methodenaufrufe beliebiger Plattformen zu dekodieren und an eine Anwendung weiterzuleiten. Dabei wird implizit das Entwurfsmuster Fassade umgesetzt: der Client muss praktisch keine Implementierungsdetails des Webservice kennen, um ihn zu nutzen.[4] Auf diese Weise entsteht eine verteilte Architektur. Die Kommunikation mit Webservices erfolgt über Nachrichten, die über unterschiedliche Protokolle transportiert werden können.

Implementierungsmöglichkeiten

Webservices basieren selbst auf Standardprotokollen, mit denen die Informationen und Befehle übertragen werden. Sie können auf grundsätzlich verschiedene Arten implementiert werden, beispielsweise:

Grundlage für einige Implementierungen von Webservices bilden Standards, die jeweils auf XML basieren und in den zugehörigen Artikeln näher beschrieben werden:

  • UDDI als Verzeichnisdienst zur Registrierung von Webservices. Es ermöglicht das dynamische Auffinden des Webservices (z. B. den Dienst FußballErgebnisse) durch den Nutzer. Allerdings wird UDDI nur in eher kleineren Firmennetzwerken verwendet und hat sich nie global durchgesetzt.
  • WSDL zur Beschreibung der unterstützten Methoden (z. B. TorschuetzenKoenig) und ihrer Parameter (z. B. Datum) für den Programmierer.

Abgrenzung

Webservices sind nicht gleichzusetzen mit:

  • Enterprise Application Integration, jedoch können Webservices bei einer Enterprise Application Integration verwendet werden.
  • Webanwendungen und Onlinediensten, Webservices können jedoch von Webanwendungen und Onlinediensten genutzt werden. Ein Webservice wird von einem Rechner oder einem Programm aufgerufen, Webanwendungen und Onlinedienste hingegen werden über ihre Benutzerschnittstellen von Menschen genutzt.[4] Ein Webservice kann außerdem in verschiedenen Webanwendungen bzw. Onlinediensten genutzt werden.

Bewertung

Vorteile

  • Die verwendeten offenen Standards vermeiden Lizenzkosten. Da zu diesen Standards auch die allgegenwärtigen internetbasierten Technologien gehören, lassen sie sich auch vielerorts einsetzen. Auch hier liegt ein Kostenvorteil.
  • Webservices können faktisch auf jedes Übertragungsprotokoll aufsetzen.
Bei vielen verschiedenen Nutzern im Internet wird üblicherweise HTTP zur Datenübertragung verwendet, da nur selten Probleme mit Firewalls auftreten. Dies ist ein Vorteil gegenüber vergleichbaren Technologien wie CORBA, DCOM oder auch Java RMI.
Webservices sind wie beschrieben jedoch nicht an HTTP gebunden, sondern lassen sich auch mit anderen Protokollen übertragen, z. B. mit:
und sind somit für verschiedene Anwendungsszenarien geeignet.
  • Durch die Verwendung von bereits bestehenden und weit verbreiteten Internetstandards (HTTP, XML etc.) entsteht eine offene und flexible Architektur, die unabhängig von den verwendeten Plattformen, Programmiersprachen und Protokollen ist. So können z. B. Windows-C#-Clients hinter einer Firewall mit Java-Servern kommunizieren, die auf Linux implementiert sind. Die weit verbreiteten Standard-Protokolle ermöglichen eine Interoperabilität über jegliche Heterogenitäten im Internet hinweg.
  • Die Barrieren zum Einstieg sind vergleichsweise niedrig.

Nachteile

Anwendungsgebiete

Webservices stellen neue Ansätze im Rahmen von Enterprise Application Integration (EAI) und Grid-Computing dar. Das geplante Haupteinsatzgebiet liegt im Business-to-Business-Bereich. Geschäftsprozesse sollen problemlos über Unternehmensgrenzen hinweg abgewickelt werden. Eine Sprache hierfür ist WS-Business Process Execution Language (BPEL), die es erlaubt, zu orchestrieren.

Eine weitere Anwendung stellen die vom Open Geospatial Consortium standardisierten Geodienste dar, welche als raumbezogene Webservices Geodaten in strukturierter Form zugänglich machen.

Die Mächtigkeit dieses Konzeptes besteht in der Möglichkeit, vorhandene Systeme und Dienste miteinander plattformübergreifend zu kombinieren und diese in den eigenen Anwendungen und Diensten zur Verfügung zu stellen.

Beispiele

Google

Google betreibt für seine Webanwendung und für die Nutzung in anderen Anwendungen sehr viele Webservices. Darüber kann man beispielsweise Computing-Services oder Datenanalyse auf Basis von maschinellem Lernen nutzen, die Google bereitstellt.

Alle APIs bieten eine HTTP-Schnittstelle mit JSON als Protokoll an; für einige APIs steht zusätzlich eine gRPC-Schnittstelle zur Verfügung.

Zur Nutzung benötigt man eine Zugriffskennung (API Key), um auf die teilweise kostenpflichtigen Webservices zugreifen zu können.[5] Google selbst überwacht die Nutzung und vergibt für die Nutzung jeweils bestimmte Kontingente. Damit soll Missbrauch vermieden und die Verfügbarkeit der Webservices gewährleistet werden.[6] Die Google-Services werden in vielen eigenen Anwendungen verwendet, z. B. in Google Maps oder Google Fotos.

Computerreservierungssysteme

Ein weiteres Beispiel ist ein Computerreservierungssystem zwischen Fluggesellschaften und Reisebüros. Die Fluggesellschaften stellen Möglichkeiten zum Nachschlagen oder Buchen von Flügen über einen Webservice bereit. Die Reisebüros bieten auf ihrer Webpräsenz Flüge verschiedener Fluggesellschaften an, von denen die Reisebüros zur Laufzeit über UDDI erfahren. Der Kunde kann auf der Webpräsenz des Reisebüros nun zentral Preise und Termine verschiedener Flüge vergleichen und gleich buchen.

Erweiterungen

Mit dem Web Services Composite Application Framework (WS-CAF) wurde eine weiterführende Spezifikation beim W3C und bei OASIS zur Standardisierung eingereicht, die Webservices um für die Koordination von Applikationen nützliche Standards erweitern sollen, z. B. um Transaktionsmanagement. Über weitere, proprietäre Erweiterungen wird bei verschiedenen Herstellern nachgedacht.

Um Problemen der Sicherheit zu begegnen, werden Konzepte auf der Grundlage der Security Assertion Markup Language (SAML) entwickelt.

Des Weiteren befasst sich das Gebiet der Semantic Web Services mit der Erweiterung von Webservices um Semantik, die das Auffinden (Discovery), Auswählen (Selection), Ausführen (Invocation) und die Komposition mit anderen Webservices nach der Idee des Semantic Web ermöglichen und vereinfachen soll.

Testmöglichkeiten

Programme, die für den Softwaretest von Webservices (bzw. deren Programmierschnittstellen) genutzt werden:

Literatur

  • Ingo Melzer et al.: Service-orientierte Architekturen mit Web Services. 4. Auflage. Spektrum, Heidelberg 2010, ISBN 3-8274-2549-2
  • Sanjiva Weerawarana, F. Curbera, F. Leymann: Web Services Platform Architecture. Prentice Hall PTR, Upper Saddle River/NJ 2005, ISBN 0-13-148874-0 (englisch). 
  • Michael P. Papazoglou: Web Services: Principles and Technology. Prentice Hall, Essex 2007, ISBN 978-0-321-15555-9 (englisch). 

Weblinks

Commons: Webservices – Sammlung von Bildern, Videos und Audiodateien
Wiktionary: Webservice – Bedeutungserklärungen, Wortherkunft, Synonyme, Übersetzungen

Einzelnachweise

  1. Web Services Architecture. World Wide Web Consortium, 11. Februar 2004, abgerufen am 27. Januar 2021.
  2. Web Services Glossary. Abgerufen am 27. Januar 2020.
  3. Geoff Bender: XML vs JSON Based Web Services: Which is the Best Choice? 29. März 2013, abgerufen am 27. Januar 2021.
  4. a b Webservcie. DATACOM Buchverlag GmbH, abgerufen am 30. Januar 2021.
  5. API-Nutzung deckeln. Google, 19. Januar 2021, abgerufen am 30. Januar 2021.
  6. Google Cloud APIs. Google, 12. Januar 2021, abgerufen am 30. Januar 2021.
Wikipedia

Dieser Text basiert auf dem Artikel Webservice aus der freien Enzyklopädie Wikipedia und steht unter der Lizenz Creative Commons CC-BY-SA 3.0 Unported. Eine Liste der Autoren ist in der Wikipedia verfügbar.

Webservice auf jobtic.com

Backend

Experten finden

jobtic.com verbindet IT-Freiberufler, Selbstständige, Consultants, Projektanbieter, IT-Dienstleister und Unternehmen in einer zentralen IT-Projektbörse für den deutschsprachigen Markt. Die Plattform unterstützt die Suche nach Webservice Freelancern, Webservice Projekten, Contracting-Einsätzen, Remote-Projekten, IT-Jobs, Interim-Rollen, technischen Experten und spezialisierten Beratern.

Chancen entdecken

Freelancer profitieren von einer professionellen Präsentation ihrer Expertise im Bereich Webservice und erhalten Zugriff auf aktuelle Projektangebote, Projektanfragen und neue Karrierechancen im IT-Freelancer-Markt. Durch moderne Such- und Filterfunktionen lassen sich passende Projekte, Auftraggeber, Recruiter und Kontakte schnell identifizieren.

Wissen einordnen

Neben der Projekt- und Expertenplattform bietet jobtic.com umfangreiche Informationen, Hintergründe und Wiki-Inhalte rund um Webservice. Dazu gehören Grundlagen, Definitionen, Einsatzbereiche, Entwicklungen, Versionen, Methoden, technische Zusammenhänge, Best Practices und aktuelle Marktinformationen zu Webservice.

Vernetzung stärken

Unsere jobtic-Übersicht zu Webservice kombiniert Wissensdatenbank, Projektbörse, Freelancer-Verzeichnis, Experten-Suche und Projektmarkt in einer zentralen Plattform. Besucher finden hier sowohl Informationen zu Webservice als auch passende Freelancer, Berater, Entwickler, Consultants, Administratoren, Support-Spezialisten und aktuelle IT-Projekte mit Bezug zu Webservice.

Kontakte aufbauen

jobtic.com unterstützt Freelancer und Unternehmen dabei, schneller passende Projekte, Experten und Geschäftskontakte im Bereich Webservice zu finden. Egal ob Projektakquise, Expertenvermittlung, Freelancer-Suche, Contracting, IT-Consulting oder spezialisierte Projektbesetzung - jobtic.com bietet die passende Plattform für den modernen IT-Projektmarkt.

Zentral vernetzen

Wer nach Webservice Freelancern, Webservice Experten, Webservice Projekten, Webservice Beratern, Webservice Consulting, Webservice Contracting, Webservice Projektbörse, Webservice Freelancer-Profilen oder aktuellen Entwicklungen rund um Webservice sucht, findet auf jobtic.com eine zentrale Anlaufstelle für Wissen, Projekte und professionelle Vernetzung im IT-Umfeld.

Passende Projekte zu Webservice

Mehr Projekte

Projekte veröffentlichen

Unternehmen können Projekte mit Anforderungen, Laufzeiten, Technologien, Einsatzorten, Remote-Anteilen, Budgetrahmen und Projektbeschreibungen veröffentlichen. Gleichzeitig ermöglicht jobtic.com die gezielte Suche nach verfügbaren Webservice Spezialisten mit passenden Erfahrungen, Branchenkenntnissen und technischen Fähigkeiten.

Aktuell sind keine sichtbaren Projekte verfügbar.