SOA (Service-Oriented Architecture) is a component model. It splits the different functional units (called services) of an application and connects them through well-defined interfaces and protocols between these services. The interface is defined neutrally, and it should be independent of the hardware platform, operating system, and programming language that implements the service. This allows services built in a variety of systems to interact in a unified and universal way.
SOA (Service-Oriented Architecture), can be distributed deployment, combination, and use of loosely coupled coarse-grained application components through the network according to requirements. The service layer is the foundation of SOA and can be directly invoked by applications, thereby effectively controlling the human dependence of the interaction with software agents in the system.
SOA is a coarse-grained and loosely coupled service architecture. Services communicate through simple and precisely defined interfaces, without involving underlying programming interfaces and communication models. SOA can be seen as a natural extension of the B/S model, XML (a subset of standard general-purpose markup language)/Web Service technology.
SOA will be able to help software engineers understand the development and deployment forms of various components in enterprise-level architecture at a new height. It will help enterprise system architects construct the entire business system faster, more reliably, and more reusable. . Compared with the past, the SOA-based system can face rapid business changes more calmly.
The implementation of SOA has several distinct basic characteristics. The key goal of implementing SOA is to maximize the role of enterprise IT assets. To achieve this goal, the following characteristics must be kept in mind during the implementation of SOA:
SOA services have platform-independent self-describing XML documents. Web Services Description Language is a standard language used to describe services.
SOA services communicate with messages, which are usually defined using XML Schema. The communication between consumers and providers or between consumers and services is more common in environments where the provider is unknown. The communication between services can also be seen as a key business document processed internally by the enterprise.
Within an enterprise, SOA services are maintained through a registry that plays the role of the directory listing. The application looks for and calls a certain service in the Registry. Universal Description, Definition, and Integration is the standard for service registration.
Every SOA service has an associated quality of service (QoS). Some of the key elements of QoS are security requirements, reliable communication, and policies on who can call the service.
First of all, let’s compare the monolithic approach, SOA and microservices from the point of view of their main characteristics: granularity and coupling. I will help you to understand the evolution of theses approaches and their advantages and weaknesses.
What are the similarities and differences among mainstream architectures, such as layered architectures, microservices architectures, and distributed architectures? What is a service-oriented architecture (SOA)? Why do we need SOA? What is the nature of service orientation? How should we design services and service-oriented architecture?
In this thorough and insightful article, Cheng Yan (nickname Dingyi), a senior technical expert at Alibaba, elaborates on his views about SOA and proposes a path to success for service orientation.
Explore Alibaba Cloud's expanding range of high-performance cloud products including large-scale computing, storage resources, and Big Data processing capabilities for users around the world.
This half-day online conference will help retail and e-commerce leaders to better address new challenges presented in the digital era under different business scenarios. You can also have a live chat with our experts to benefit from our leading technologies that fuel Alibaba's e-commerce business.
Alibaba Clouder - September 2, 2020
Alibaba Container Service - March 10, 2020
SeanLiu - April 17, 2020
Bruno Delb - September 25, 2020
Alipay Technology - March 4, 2021
Alibaba Clouder - February 15, 2019
A one-stop, cloud-native platform that allows financial enterprises to develop and maintain highly available applications that use a distributed architecture.Learn More
Customized infrastructure to ensure high availability, scalability and high-performanceLearn More
Accelerate software development and delivery by integrating DevOps with the cloudLearn More
More Posts by Alibaba Clouder