Today the ability to seamlessly exchange information between internal business units, customers, and partners is vital for success; yet most organizations employ a variety of disparate applications that store and exchange data in dissimilar ways thus cannot talk to one another productively. A web service is a software function provided by a network address over the web with the service always on as in the concept of utility computing. In other words, web service is a software system designed to support interoperable machine to machine interaction over a network. It has an interface described in a machine processable format.
Other systems interact with the web service in a manner prescribed by its description using SOAP (Simple Object Access Protocol) messages, typically conveyed using HTTP with an XML serialization in conjunction with other web related standards. Web services are powered by XML and three other core technologies via WSDL, SOAP and UDDI.
TYPES OF WEB SERVICE
Regarding various types of web service, sometimes the web services are classified as big web services and Restful web services.
Big web services are based on SOAP standards and often contain a WSDL to describe the interface that the web service offers. The details of the contract may include messages, operations, bindings, and the location of the web service. It includes architecture to address complex, non – functional requirements like transactions, security, addressing, coordination, and also handles asynchronous processing and invocation. The SOAP based web service provides asynchronous processing, reliability, and stateful operations.
On the other hand, Restful web services are based on the way how our web works. Our very own world wide web, the largest distributed application is based on Rest architecture style. Rest is neither a standard nor a protocol. Restful web services are based on HTTP protocol and are basically an architectural style like client server architecture. Web service following this architecture style in its development is said to be restful web services. Rest style architecture follows the concept of clients and servers. Client initiates request to server, server processes requests and returns appropriate responses. Requests and responses are built around the transfer of representations of resources which are identified by URL.
ADVANTAGES OF WEB SERVICES
- INTEROPERABILITY: Web services have the ability to work outside of private networks. This offers the web developers many alternative routes to offer their solutions. That is when the solution is developed; they are likely to be around a longer time span thus reducing redevelopment.
- USABILITY: The business logic designed for several different systems can be accessible via a web service. Thus your application can choose from many different available web services. So it allows the developer to create web solution using the best possible platform.
- REUSABILTY: Web services can be implemented in various applications, in a sense to be reused later.
- DEPLOYABILITY: The advantage of using web service is that it can be deployed over regular Internet technology.
DISADVANTAGES OF WEB SERVICE
- BIG IN SIZE: Simple to use and easy but web services are mostly large sized so sometimes the issue.
- SECURITY: HTTP and HTTPS are simple web protocols, used extensively but not meant for long time protocols as their security over long use is an issue.