A Web Service can be defined in the following ways:
- It is a client-server application or application component
for communication.
- The method of communication between two devices over the
network.
- It is a software system for interoperable machine-to-machine
communication.
- It is a collection of standards or protocols for exchanging
information between two devices or applications.
As you can see in the figure, Java, .net, and PHP
applications can communicate with other applications through web
services over the network. For example, the Java application can
interact with Java, .Net, and PHP applications. So web service is a
language-independent way of communication.
Types of Web Services
There are mainly two types of web services.
- SOAP web services.
- RESTful web services.
Features of Web Service
XML-Based
Web services use XML at data
description and data transportation layers. Using XML excludes any
networking, operating system, or platform binding. Web services-based
operation is extremely interoperable at its core level.
Loosely Coupled
A client of a web service is not fixed to the web service directly. The
web service interface can support innovation over time without
negotiating the client's ability to communicate with the service. A
tightly coupled system means that the client and server logic are
closely tied to one another, indicating that if one interface changes,
then another must be updated. Accepting a loosely coupled architecture
tends to make software systems more manageable and allows more
straightforward integration between various systems.
Coarse-Grained
Object-oriented technologies such as Java expose their functions through
individual methods. A specific process is too fine an operation to
provide any suitable capability at a corporate level. Building a Java
program from scratch needed the creation of various fine-grained
functions that are then collected into a coarse-grained role that is
consumed by either a client or another service. Businesses and the
interfaces that they prove should be coarse-grained. Web services
technology implements a natural method of defining coarse-grained
services that approach the right amount of business logic.
Ability to be Synchronous or
Asynchronous
Synchronicity specifies the binding of the client to the execution of
the function. In synchronous invocations, the client blocks and delays
in completing its service before continuing. Asynchronous operations
grant a client to invoke a task and then execute other functions.
Asynchronous clients fetch their results at a later point in time, while
synchronous clients receive their effect when the service has been
completed. Asynchronous capability is an essential method in enabling
loosely coupled systems.
Supports Remote Procedure Calls
(RPCs)
Web services allow consumers to invoke procedures, functions, and
methods on remote objects using an XML-based protocol. Remote systems
expose the input and output framework that a web service must support.
Component development through Enterprise JavaBeans (EJBs) and .NET
Components has become a part of architectures and enterprise deployments
over a previous couple of years. Both technologies are assigned and
accessible through a variety of RPC mechanisms. A web function supports
RPC by providing services of its own, equivalent to those of a
traditional role, or by translating incoming invocations into an
invocation of an EJB or a .NET component.
Supports Document Exchange
One of the essential benefits of XML is its generic way of representing
not only data but also complex documents. These documents can be as
simple as describing a current address, or they can be as involved as
defining an entire book or Request for Quotation (RFQ). Web services
support the transparent transfer of documents to facilitate business
integration.
Happy Exploring!
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.