Webservice

This product was added to computer science because of the content, defects on the quality assurance side of the editor. This is done to bring the quality of the articles from the computer science subject area to an acceptable level. Help us to eliminate the substantive shortcomings of this article and take part you in the discussion! ( ) Reason: The article actually describes only a web service based on the RPC architecture. Many facts relating to a REST WS are completely wrong. - 195.243.27.84 09:49, May 9, 2012 ( UTC)

A Web service or Web service is a software application that is provided through a network for direct machine-to- machine interaction. Each web service has a Uniform Resource Identifier ( URI), through which it can be clearly identified, as well as an interface description in machine readable format ( as an XML artifact, usually WSDL ) that defines how to interact with the web service. The communication may ( but need not) run on protocols such as HTTP context from the Internet and its XML-based.

Architecture

Client programs generally send requests to a web service, and this responds with the desired information. Web services are an integral part of software systems that automatically exchange data or call functions on remote systems.

Web services are based on the service oriented architecture ( SOA) and therefore combine distributed and object-oriented programming standards and are based on business management solutions on the internet.

There can be instances users ( service consumer), identify (service ) providers and directory.

The offerer published in a directory, the description of its services. The user searches the directory and selects the desired service. After possibly further protocol details were exchanged, the dynamic connection of the consumer to the provider takes place. The user now uses the methods of the web services of this dealer.

The basis for this form three classes, each based on XML and are described in more detail in the related articles:

  • UDDI as a directory service for the registration of web services. It allows the dynamic discovery of web services ( eg the football results service ) by the user. However, UDDI is used only in rather smaller corporate networks and has never been enforced globally.
  • WSDL to describe the supported methods (eg TorschuetzenKoenig ) and their parameters (eg date ) for the programmer.
  • (SOAP or XML -RPC) for communication. Here, the actual call is started.

Web services represent the three most important parts of the collaboration between client and server: the coming together, binding, and data exchange.

Accessible Web services are a unique URI. The platform- independent standards used are able to decode remote method calls any platforms and forward them to an application. In this way, a distributed architecture. To communicate with web services via messages can be transported over different protocols.

Implementation options

Web services may be implemented in various ways. The most common are:

  • Remote Procedure Call ( RPC) over remote procedure calls: WSDL - based, loose coupling is not necessarily guaranteed
  • SOAP based WSDL as a sort of news service
  • REST, An attempt is the interface to a lot of " defined " standard operations ( similar to HTTP: GET, PUT, POST, DELETE) to restrict. The focus is on the interaction of stateless resources.

Demarcation

  • Web services are not the same as enterprise application integration, but they can integrate find use in an Enterprise Application.
  • Web services are not to be equated with Web applications, but they can be used by web applications ( web application additionally provides a user interface for input or display of information to or from a web service ).

Assessment

Benefits

  • The open standards used to avoid some license costs. Because of these standards include the ubiquitous Internet-based technologies, they can be employed also in many places. Again, there is a cost advantage.
  • Web services can actually build on each transmission protocol. If the number of different users on the Internet HTTP is typically used for data transmission, since only rarely encounter problems with firewalls. This is an advantage over comparable technologies such as CORBA, DCOM or Java RMI. Web services are described as not tied to HTTP and can be also with other protocols such as SMTP - for example for asynchronous transmission - or FTP - for example, for very large messages - transmitted and are thus open to different application scenarios suitable.
  • By using existing and widely used internet standards (HTTP, XML, etc.) creates an open and flexible architecture, which is independent of the platforms, programming languages ​​and protocols used. For example, Windows C # client behind a firewall with Java servers that are implemented on Linux to communicate. The widely used standard protocols enable interoperability across of any heterogeneities on the internet.
  • The barriers to entry are relatively low.

Disadvantages

  • The main difficulties in the implementation of web services should relate to safety aspects. Thus it can be noted for the transport that important Web services are encrypted or can occur authentication. Whether this is sufficient or HTTPS solutions such as XML Signature, XML Encryption and SAML are to be preferred, should be weighed.
  • A special attention is paid to the performance. This is negatively affected by XML parsing and file size. The administrative burden increases for highly distributed systems. The overhead is sometimes considerably.
  • It is more know-how needed as eg for remote procedure call (RPC). Programming languages ​​with which you want to integrate Web services that need special libraries (eg for the Document Object Model ).

Areas of application

Web services provide new approaches in the context of Enterprise Application Integration ( EAI) and grid computing Represents the planned main application is in the business-to -business (B2B). Business processes to be handled easily through enterprise boundaries. A language for this is WS- Business Process Execution Language (BPEL ), which allows to orchestrate.

Another application represent the standardized by the Open Geospatial Consortium Geoservices which make as geospatial web services accessible spatial data in a structured form.

Web services can provide data and functions for any other computer systems that simply must be located in a common network itself, for their programs. So there is also the possibility, let check the spelling check in Open Office from a web service of the University of Leipzig.

The power of this concept lies in the possible combinations of existing systems and services to combine with each other across platforms and make them in your own applications and services available.

Examples

Google Inc. operating from 2002 onwards a web service that its functionalities have the same opportunities offered such as the user interface to the Google web page itself programs could now look with a response of the interface directly for information on the Internet, received via the interface, the result data and could use it for their own tasks. Parsing the Google website was not even close to equivalent alternative. However, Google introduced since December 2006, no new access identifiers (API Keys) more for it and has set mid-2009 the service. Even Amazon.com offers since 2002 its portal pages a web service for various Internet-related services, Amazon Web Services.

A practical example is the interaction between airlines and travel agencies. The airlines provide opportunities for future reference or booking flights available via a web service. The travel agencies offer on its website flights of different airlines, which experienced travel agents at runtime using UDDI. The customer can now compare centrally on the website of the travel agency rates and dates of various flights and book immediately.

Extensions

The Web Services Composite Application Framework (WS- CAF) was submitted a further specification at the W3C and OASIS for standardization, web services should to for the coordination of standards useful applications, such as transaction management, expand. About other proprietary extensions are being considered with different manufacturers. In order to address safety issues, concepts based on the Security Assertion Markup Language (SAML ) to be developed.

Furthermore, the field of Semantic Web Services with the expansion of Web services to semantics, the finding ( Discovery ), selecting ( Selection), Run ( Invocation ) and the composition with other Web services according to the idea of the Semantic Web is to simplify and facilitate deals.

815189
de