Data Exchange between applications developed in different languages or platform such as Java & Dot Net over Internet is the Major Challenge.
Before we start webservices we will have quick look into currently used technologies for Data Exchange over internet prior to webservices.
It is a set of Microsoft concepts and program interfaces in which client program objects can request services from server program objects on other computers in a network.
It Is an architecture and specification for creating, distributing, and managing distributed program objects in a network.
It allows programs at different locations and developed by different vendors to communicate in a network through an “interface broker.”
It is a protocol through which distributed programs written in different programming languages can communicate over the Internet.
IIOP is a part of the CORBA standard, which is based on the client/server computing model.
Using IIOP, we can write client programs that communicate with your site’s existing server programs wherever they are located without having to understand anything about the server other than the service it performs and its address (called the Interoperable Object Reference, IOR, which comprises the server’s port number and IP address).
Webservices aims to resolve the problems faced by using existing or above technologies for Data Exchange.
A service is a collection of discrete unit of data or content that either consists of business logic or host command input and output.
A service is exposed via a common access infrastructure.
Exposing a service makes the data or functionality in a system or application available to other organizations through a common interface. When the common interface is Web-based or Internet-based, the service is called a Web service.
In simple terms Any program that is callable by or or which shares data to another program across the Web is called a web services.
This program is
Web services are network-accessible programs that use a standardized messaging protocol to communicate with other programs that want to use their functions.
Web services reside on servers which can be on the Internet, on your company’s private intranet, or on your own compute.
Generally Web services Architecture consists of three major components
It can also be called as Service Broker or webservices platform.
Service Registry provides common access infrastructure or platform for service providers & Service Consumers to exchange data.
It is responsible for making the web service interface and implementation access information available to any potential service consumer as published by service provider.
All the users of this registry ( both consumers & providers) has to get registered for accessing the services from service Registry.
All the registered users data is available in UDDI.
The Universal Description, Discovery and Integration (UDDI) specification defines a way to publish and discover information about web services.
Its is a directory service where businesses can register and search for Web service. It is paid service.
UDDI is a cross-industry effort driven by all major platform and software providers like Dell, Fujitsu, HP, Hitachi, IBM, Intel, Microsoft, Oracle, SAP, and Sun, as well as a large community of marketplace operators, and e-business leaders.
Over 220 companies are members of the UDDI community.
The service provider creates a web service and publishes its interface and access information to the service registry.
Each provider will decide which services to expose, how to make trade-offs between security and easy availability, how to price the services, or how to exploit free services for other value.
The provider also has to decide which category to list the service in the service registry and what sort of trading partner agreements are required to use the service published by him.
It can also be called as Service requester or webservices client.
The service requester or web service client locates entries in the Service registry using various find operations and then binds to the service provider to invoke one of its web services.
Note: Irrespective of Service Provider or Consumer both of have to register them self in Service Registry to access or public information.
A Web service is a software system that used to Exchange of data over the internet between service Providers & service Consumers using web services platform or service registry.
The implementer ( Service Provider) decides the scope of the webservices .
Types of Web services Architecture:
It can also called as Private registry or private broker service
As the name suggested this architecture is widely followed in within organisation to exchange data & services between consumers & providers .
Internal web service architecture works on intranet ( within the organisation)
Services are only accessible to a limited audience, for example, users of a company intranet
Private brokers maintain their own directory or interface or domain for exchange of data between services consumers & service providers internally.
Internal web services architecture Provides web services within a domain or organization through using middleware can be expressed as internal web services. As this architecture doesn’t allow any other client or domain to use the services it is known as behind-the-firewall web services.
For example consider an organization which sells product to the customers in market, if the person at help-desk with in organisation wants to access information of a customer completely then internal web services has to be utilized. This kind of internal architecture will help in combining customer information available in different parts of the organization.
Purchasing date, cost, payments, service and warranty details of purchased product can be viewed on single screen if internal web services are used effectively.
Internal web services architecture uses conventional middleware for using internal services.
Services are deployed for public usage through internet.
It is paid service which any company can register with web services brokers & purchase
All the registered user data is available in UDDI
It is a directory service where businesses can register and search for Web service
External architecture of web services architecture allows outsiders or other clients to access the services. In order to get access to particular web service, the client has to send a request to the provider in return provider will accept the request and offers requested services.
The process of external web services is provided below:
The above diagram clearly explains how web service can be obtained from the service provider.
Here the company A is service requester, company B is service provider and company C is the directory which contains the information of all available web services. All the web service providers have to publish the information about services offered by them. The clients refer to the service availability directory in order to find providers. After choosing a service provider Company A and company B interact with each other to exchange information or to obtain web service. Thus the basic process to be followed for attaining web service is publishing, finding and interacting.
Currently two important ways via web service are used in industry namely
SOAP STANDS for Simple Object Access Protocol (SOAP)
SOAP web service allows applications exchange information or access remote objects using XML.
SOAP uses XML to define the format and data in messages. The messages are sent over the Internet.
SOAP Webservice Service functions like this :
Client application calls a Web service by sending an XML message as a request, and the Web service infrastructure returns an XML response to the client. Because all communication is formatted with XML, a Web service is not tied to any particular operating system, programming language, or platform.
In this tutorials I am going to speak about both internal & external webservice architecture itself.
REST STANDS for Representational State Transfer
Rest allows application to exchange information using web-standards and the HTTP protocol.
REST uses architectural style for developing applications that can be accessed over the internet.
REST Webservice Service functions like this :
In a REST architecture everything is a resource.
A resource can be accessed via a common interface based on the HTTP standard methods via REST server.
A REST client can access and modify the REST resources
Every resource should support the HTTP common operations. Resources are identified by URI’s ( through global IDs).
REST allows that resources to exchange data in different formats or representations, e.g., text, XML, JSON etc.
The REST client can ask for a specific representation via the HTTP protocol (content negotiation).
Web Services offer many benefits over other types of distributed computing architectures:
Web services is platform independent which lets developers use different programming languages for development and exchange data between other developers outside.
Web Services allow the business logic of many different systems to be exposed over the Web. This gives applications the freedom to choosing the Web Services that they need. Instead of writing the code for each client, developers need only include additional application-specific business logic on the client-side. This allows to develop services and/or client-side code using the languages and tools that we want
Web Services are deployed over standard Internet technologies. This makes it possible to deploy Web Services even over the fire wall to servers running on the Internet on the other side of the globe. Also thanks to the use of proven community standards, underlying security (such as SSL) is already built-in
Web Services provide not a component-based model of application development, but the closest thing possible to zero-coding deployment of such services. This makes it easy to reuse Web Service components as appropriate in other services. It also makes it easy to deploy legacy code as a Web Service
Your email address will not be published. Required fields are marked *
Save my name, email, and website in this browser for the next time I comment.
Current ye@r *
Leave this field empty