- Spring 5.0 Microservices(Second Edition)
- Rajesh R V
- 230字
- 2021-07-02 19:44:55
Service-Oriented Architecture (SOA)
SOA and microservices follow similar concepts. In the Chapter 1, Demystifying Microservices, we saw that microservices are evolved from SOA and many service characteristics are common in both approaches.
However, are they the same or are they different?
Since microservices are evolved from SOA, many characteristics of microservices are similar to SOA. Let's first examine the definition of SOA.
The Open Group definition of SOA (http://www.opengroup.org/soa/source-book/soa/p1.htm) is as follows:
SOA is an architectural style that supports service-orientation. Service-orientation is a way of thinking in terms of services and service-based development and the outcomes of services.
A service:
- Is a logical representation of a repeatable business activity that has a specified outcome (e.g., check customer credit, provide weather data, consolidate drilling reports)
- Is self-contained
- May be composed of other services
- Is a “black box” to consumers of the service
We have learned similar aspects in microservices as well. So, in what way are microservices different? The answer is--it depends.
The answer to the previous question could be yes or no, depending on the organization and its adoption of SOA. SOA is a broader term, and different organizations approached SOA differently to solve different organizational problems. The difference between microservices and SOA is based on the way an organization approaches SOA.
In order to get clarity, a few scenarios will be examined in the following section.
- 少年輕松趣編程:用Scratch創作自己的小游戲
- Java高手真經(高級編程卷):Java Web高級開發技術
- Production Ready OpenStack:Recipes for Successful Environments
- Python Geospatial Development(Second Edition)
- C語言程序設計教程
- Swift語言實戰精講
- Creating Stunning Dashboards with QlikView
- 微服務架構深度解析:原理、實踐與進階
- Python機器學習:預測分析核心算法
- Unity 2018 Shaders and Effects Cookbook
- OpenResty完全開發指南:構建百萬級別并發的Web應用
- Learning AngularJS for .NET Developers
- OpenCV with Python By Example
- 汽車人機交互界面整合設計
- Arduino可穿戴設備開發