Reprinted: Overview of SOA Architecture

This article is reproduced in: Overview of SOA Architecture

Just for the record.


1. Overview of SOA

SOA (Service-Oriented Architecture, Service-Oriented Architecture ) is a method for designing, developing, deploying and managing discrete models in a computer environment. SOA is not a new thing, it is proposed under the background of repeated construction and low efficiency of internal IT systems in enterprises. In the SOA model, all functions are defined as independent services, and all services are connected through a service bus (ESB) or a process manager. This loosely coupled structure makes it possible to integrate various existing heterogeneous systems at a minimum cost. data format conversion), therefore, introduces more complexity by itself.

A typical SOA structure is shown in the figure below:

Among them, for a single service, its internal structure is generally as follows:

2. SOA design principles:

 The design principles of SOA include:

  • Clear interface definition: The interface needs to meet the requirements of stability, clarity, and encapsulation.
  • Self-contained and modularized: The functional entity that implements the service is completely independent and autonomous, and can be deployed, versioned, self-managed, and restored independently.
  • Coarse-grained: The number of services should not be too large, relying on message interaction rather than remote procedure calls.
  • Loose coupling: reduce the interdependence and influence between various services, and the location, implementation technology, current state and private data of each service are not visible to service requesters.
  • Interoperability, Compatibility and Policy Statement.

3. SOA implementation method

As a concept and idea of ​​architecture design, SOA needs to be realized with the help of specific technologies and methods. Currently, the mainstream implementation methods of SOA include: Web Service, service registry and enterprise service bus.

3.1 Web Service

3.2 Service Registry

Service registry (Service registry) provides a policy enforcement point, at this point, services can be registered in SOA, so that they can be discovered and used. Most commercial service registry products support service registry, service location, and service binding functions.

3.3 Enterprise Service Bus ESB

ESB (Enterprise Service Bus) connects various services in the enterprise together. Because each service is heterogeneous, there is no unified standard, and the interfaces provided by each heterogeneous system are various. SOA uses ESB to shield the different interfaces provided by heterogeneous systems, so as to achieve efficient communication between services. interconnection.

 4. Key technologies of SOA

The technologies closely related to SOA mainly include UDDI, WSDL, SOAP and REST, etc. These technologies are all developed on the basis of XML.

4.1 UDDI

 UDDI (Universal Description Discovery and Integration, unified description, discovery and integration) provides a method of publishing, finding and locating services. It is an information registration specification for services so that the services can be discovered and used. It also defines a programming interface. The technical specification mainly includes three parts: data model, API and registration service.

4.2 WSDL

WSDL (Web Service Description Language, Web Service Discovery Language) is a language for describing services based on XML syntax, including service implementation definitions and service interface definitions. A service implementation definition describes how a service provider implements a specific service interface, including service and port descriptions. Service interface definition is an abstract and reusable definition. Industry standard organizations can use this abstract definition to specify some standard service types, and service implementers can implement specific services based on these standard definitions.

4.3 SOAP

SOAP (Simple Object Access Protocol, Simple Object Access Protocol) defines a message transmission specification between a service requester and a service provider. The protocol carries XML-formatted messages over HTTP. Through SOAP, applications can exchange data and remote procedure calls (RPC) over the network. SOAP mainly includes four parts: encapsulation, encoding rules, RPC representation and binding.

4.4 REST

REST (Representational State Transfer, expressive state transfer) is a design and development method for Web services. It usually uses popular protocols or standards such as HTTP, XML, URI and HTML, which can effectively reduce the complexity of development and improve the reliability of the system. Scalability. REST basically only supports POST, GET, PUT, and DELETE for information operations. These operations are based on the following design concepts:

  • All things on the network are abstracted as resources;
  • Each resource corresponds to a unique resource identifier;
  • Operate resources through a common connector interface;
  • Various operations on resources will not change the resource identity;
  • All operations are stateless.

Guess you like

Origin blog.csdn.net/qq_36256590/article/details/132257098