- Mastering Microservices with Java
- Sourabh Sharma
- 337字
- 2021-07-02 13:03:26
Services and SOA
Martin Fowler explains the following:
Let's get some background on the way microservices have evolved over the years. Enterprise architecture evolved from historic mainframe computing, through client-server architecture (two-tier to n-tier), to SOA.
The transformation from SOA to microservices is not a standard defined by an industry organization, but a practical approach practiced by many organizations. SOA eventually evolved to become microservices.
Adrian Cockcroft, a former Netflix architect, describes a microservice-based architecture as follows:
Similarly, the following quote from Mike Gancarz, a member who designed the X Windows system, which defines one of the paramount precepts of Unix philosophy, describes the microservice paradigm as well:
Microservice architectures share many common characteristics with SOAs, such as the focus on services and how one service decouples from another. SOA evolved around monolithic application integration by exposing APIs that were mostly Simple Object Access Protocol (SOAP)-based. Therefore, having middleware such as an enterprise service bus (ESB) is very important for SOA. Microservices are less complex than SOAs, and, even though they may use a message bus, it is only used for message transport and it does not contain any logic. It is simply based on smart endpoints.
Tony Pujals defined microservices beautifully:
Though Tony only talks about HTTP, event-driven microservices may use a different protocol for communication. You can make use of Kafka to implement event-driven microservices. Kafka uses the wire protocol, a binary protocol over TCP.
- MySQL數(shù)據(jù)庫(kù)應(yīng)用與管理 第2版
- 微服務(wù)與事件驅(qū)動(dòng)架構(gòu)
- Web開發(fā)的貴族:ASP.NET 3.5+SQL Server 2008
- SEO智慧
- STM32F0實(shí)戰(zhàn):基于HAL庫(kù)開發(fā)
- Java 9模塊化開發(fā):核心原則與實(shí)踐
- Unreal Engine 4 Shaders and Effects Cookbook
- JavaCAPS基礎(chǔ)、應(yīng)用與案例
- PLC應(yīng)用技術(shù)(三菱FX2N系列)
- 深入實(shí)踐DDD:以DSL驅(qū)動(dòng)復(fù)雜軟件開發(fā)
- Get Your Hands Dirty on Clean Architecture
- Beginning C# 7 Hands-On:The Core Language
- Mastering PostgreSQL 11(Second Edition)
- R語言編程基礎(chǔ)
- 測(cè)試基地實(shí)訓(xùn)指導(dǎo)