天天看點

Basic Conception On SOA

1. What is SOA?

SOA is the acronym(縮略語) for Service Oriented Architecture.

Basically, SOA states that every component of a system should be a service, and the system should be composed of several loosely-coupled services.

A service here means a unit of a program that serves a business process.

Loosely-coupled here means that these services should be independent of each other so that changing one of them should not affect any other services.

2. What is a web service?

 A web service is a software system designed to support interoperable machine-tomachine

interaction over a network.

A web service is typically hosted on a remote

machine (provider) and called by a client application (consumer) over a network.

After the provider of a web service publishes the service, the client can discover it

and invoke it.

The communications between a web service and a client application

use XML messages.

A web service is hosted within a web server and HTTP is used

as the transport protocol between the server and the client applications.

3. Web service WSDL

In order to be called by other applications, each web service has to supply a

description of itself so that other applications will know how to call it. This

description is provided in a language called WSDL.

WSDL stands for Web Services Description Language. It is an XML format that

defines and describes the functionalities of the web service, including the method

names, parameter names and types, and returning data types of the web service.

For a Microsoft ASMX web service, you can see the WSDL by adding

?WSDL to the end of the web service URL, say http://localhost/MyService/

MyService.asmx?WSDL.

4. Web service proxy

A client application calls a web service through a proxy. A web service proxy is

a stub class between a web service and a client. It is normally autogenerated by

a tool such as Visual Studio IDE, according to the WSDL of the web service. It can

be reused by any client application.

The proxy contains stub methods mimicking(模仿)

all the methods of the web service so that a client application can call each method

of the web service through these stub methods. It also contains other necessary

information required by the client to call the web service such as custom exceptions,

custom data and class types, and so on.

The address of the web service can be embedded within the proxy class, or it can

be placed inside a configuration file.

5. SOAP

There are many standards for web services—SOAP is one of them. SOAP was

originally an acronym for Simple Object Access Protocol and was designed by

Microsoft.

技術改變世界