What is Web Service and What are different types of web services?
A Web Service is can be defined by following ways:
- Is
a client server application or application component for communication.
- Method
of communication between two devices over network.
- Is
a software system for interoperable machine to machine communication.
- Is
a collection of standards or protocols for exchanging information between
two devices or application.
Let's understand it by the figure given below:
As you can
see in the figure, java, .net or PHP applications can communicate with other
applications through web service over the network. For example, 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.
SOAP Web Services
SOAP stands
for Simple Object Access Protocol. It is a XML-based protocol for accessing web
services. SOAP is a W3C recommendation for communication between two
applications.
SOAP is XML
based protocol. It is platform independent and language independent. By using
SOAP, you will be able to interact with other programming language
applications.
Advantages of Soap Web Services
WS Security:
SOAP defines its own security known as WS Security.
Language and Platform independent:
SOAP web services can be written in any programming language and executed in
any platform.
Disadvantages of Soap Web Services
Slow:
SOAP uses XML format that must be parsed to be read. It defines many standards
that must be followed while developing the SOAP applications. So it is slow and
consumes more bandwidth and resource.
WSDL dependent:
SOAP uses WSDL and doesn't have any other mechanism to discover the service.
RESTful Web Services
REST stands for Representational State Transfer. REST is an architectural style not a protocol.
Advantages of RESTful Web Services
Fast:
RESTful Web Services are fast because there is no strict specification like
SOAP. It consumes less bandwidth and resource.
Language and Platform independent:
RESTful web services can be written in any programming language and executed in
any platform.
Can use SOAP:
RESTful web services can use SOAP web services as the implementation.
Permits different data format:
RESTful web service permits different data format such as Plain Text, HTML, XML
and JSON.
SOAP vs REST Web Services
S.No
|
SOAP
|
REST
|
||
1
|
SOAP is a protocol.
|
REST is an architectural style.
|
||
2
|
SOAP stands for Simple Object Access Protocol.
|
REST stands for REpresentational State Transfer.
|
||
3
|
SOAP can't use REST
because it is a protocol.
|
REST can use SOAP web
services because it is a concept and can use any protocol like HTTP, SOAP.
|
||
4
|
SOAP uses services interfaces to expose
the business logic.
|
REST uses URI to expose business logic.
|
||
5
|
SOAP defines standards to
be strictly followed.
|
REST does not define
too much standards like SOAP.
|
||
6
|
SOAP defines standards to
be strictly followed.
|
REST does not define
too much standards like SOAP.
|
||
7
|
SOAP requires more bandwidth
and resource than REST.
|
REST requires less bandwidth
and resource than SOAP.
|
||
8
|
SOAP defines its own security.
|
RESTful web services inherits security measures
from the underlying transport.
|
||
9
|
SOAP permits XML data
format only.
|
|
||
10
|
SOAP
is less preferred
than REST.
|
REST more preferred than
SOAP.
|
Thanks for reading.....