SOA-Service-Oriented Architecture

Source: Internet
Author: User

In the previous blog post, we mentioned "tight coupling". How can we solve this problem? SOA adopts a service-oriented architecture.

1. What?

SOA = Service-oriented Architecture

SOA is a component model that associates different functional units (called services) of an application with well-defined interfaces and contracts between these services.

I personally prefer the following explanation: SOA refers to the need for business integration in the Internet environment, A software system architecture implemented by connecting independent functional entities that can complete specific tasks.

So what is SOA? SOA is neither a language nor a specific technology, but a software system architecture.

Ii. How?

The main application of SOA is to solve the problem of business integration between different commercial applications in the Internet environment.

Three basic features of SOA: independent functional entities, low-frequency access to large data volumes, text-based message transmission.

1. independent functional entities: SOA emphasizes the completely independent capabilities of functional entities that provide services in the architecture. The SOA architecture emphasizes entity self-management and recovery capabilities. Common technologies used for self-recovery, such as Transaction, MessageQueue, Redundant Deployment, and Cluster) it plays a vital role in SOA. SOA greatly improves software stability, especially on the Internet.

2. low-frequency access to large data volumes: in an Internet environment, function calls are performed multiple times through the client and server, which has a great impact on the system's response speed and stability, these factors are often a key factor that determines whether the entire system can work normally. Therefore, it is recommended that the SOA system exchange information with large data volumes at one time.

3. text-based message transmission: in an Internet environment, different languages and platforms have different definitions of data and even some basic data types, it brings great difficulties to transfer objects between different services. Because text-based messages do not contain any processing logic or data type, only text is transmitted between services, data processing relies on the acceptor to bypass the compatibility challenge.

In addition, for a service, the biggest difference between the Internet and LAN is that version management on the Internet is extremely difficult, traditional software upgrades are almost impossible in this loose distributed environment. The text-based message transmission method is used. The data processing end can only process the part of the data that you understand and ignore other data to achieve ideal compatibility.

3. Why?

Current Situation of IT Enterprises: Different Types of operating systems, application software, system software and application infrastructure are intertwined.

The need for SOA comes from the need to make the business IT system more flexible to adapt to changes in the business. By allowing strongly defined relationships and specific implementations that are still flexible, IT systems can utilize the functions of existing systems and prepare for future changes to meet their interaction needs.

With its loose coupling, SOA enables enterprises to add new services or update existing services in a modular manner to meet new business needs, provide options to provide services through different channels, and use existing or existing applications as services, thus protecting the existing IT infrastructure investment.

4. SO VS OO

Here, some people may think of object-oriented. In addition, both service-oriented and object-oriented solutions can solve the problem of tight coupling. so, I will share with you the relationship between object-oriented and service-oriented in the next blog, we look forward to communicating with you!

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.