基于微服务的体系结构(MSA) | 面向服务的体系结构(SOA) |
微服务使用轻量协议,例如 REST 和 HTTP 等。 | SOA支持多消息协议。 |
它专注于去耦。 | 它专注于应用程序服务可重用性。 |
它使用简单消息系统进行通信。 | 它使用 Enterprise Service Bus (ESB)进行通信。 |
微服务遵循" 尽可能少地共享"架构方法。 | SOA遵循" 尽可能多地共享体系结构"的方法。 |
与SOA相比,微服务在容错性方面要好得多。 | 与MSA相比,SOA在容错性上并不更好。 |
每个微服务都有一个独立数据库。 | SOA服务共享整个数据存储。 |
MSA使用了现代关系数据库。 | SOA使用了传统关系数据库。 |
MSA试图通过有限的上下文(将组件及其数据作为一个单元,具有最小的依赖关系)进行最小化共享。 | SOA 增强组件共享。 |
它更适合基于Web的较小和分配合理的系统。 | 最好使用大型和复杂业务应用程序环境。 |