微服务结构,是企业程序开发的一种流行方案,帮助开发或支持松散耦合的服务。通常,这些服务较小,协议为轻量级。服务,代表单个业务流程,因此微服务架构非常适合服务导向的程序,这与长期以来的主流一体化代码库不同。
传统上,企业应用程序由三个主要部分组成,其中包括数据库、用户界面和服务器端程序。服务器端包含整个程序的业务逻辑,一般用于提供大范围的功能。这种体系结构比微服务更固定。尽管传统的体系结构有其优点,但对这两种体系结构的比较,超出了本文的内容范围。因此,我们将聚焦 C++ 的微服务开发,以及它在这一领域与一体化程序的区别。这篇文章中介绍了一些微服务的实际用例。
图片来源: https://docs.oracle.com/en/solutions/learn-architect-microservice
微服务的特性
微服务的两个主要特性,是模块化和扩展性。单个服务表示为模块,每个模块依据具体业务功能进行构建。各个服务各司其职,处理其对应的功能,且一般无法越过其功能界限。微服务可以独立部署,但这并不意味着,它们独立于其他模块。相反,尽管微服务之间是松散耦合的,且作为单独的进程运行,但各服务之间有通信机制。升级或更换模块操作简单,但要保证从整体体系结构来看,模块的功能是完善的。与一体式程序相比,微服务体系结构的扩展性更强。
微服务的交互性
值得注意的是,微服务通常属于大系统中的活跃部分,因此,