面向服务的架构
面向服务的架构主要由与数据存储库通信的服务中的业务逻辑组成。
这些服务可以不同的形式衍生出来,用于构建应用程序。这些应用程序以不同的形式采用这些服务来构建各种应用程序。将服务视为乐高积木,可以将它们拼在一起,以特定格式构建应用程序。
这种描述相当粗糙,请允许我进一步澄清:
-
服务的边界是明确的(它们可以将不同域上的网络服务等分开)。
-
服务可以使用通用的通信协议进行相互通信(例如,所有服务都使用 RESTful API)。
-
服务是自主的(它们是解耦的,与其他服务没有任何关系)。
-
消息处理机制和模式是每个其他微服务都能理解的(因此通常是相同的),但编程环境可能不同。
面向服务的架构本质上是分布式的,因此它们比其他架构具有更高的前期复杂性。