Recently modular monolith architecture has attracted the attention of practitioners, as Google proposed "Service Weaver" framework to enable developers to write applications as modular monolithic and deploy them as a set of microservices. Google considered it as a framework that has the best of both worlds and it seems to be a trend in software architecture. This paper aims to understand the definition of the modular monolith in industry and investigate frameworks and cases building modular monolith architecture. We conducted a systematic grey literature review, and the results show that modular monolith combines the advantages of monoliths with microservices. We found three frameworks and four cases of building modular monolith architecture. In general, the modular monolith is an alternative way to microservices, and it also could be a previous step before systems migrate to microservices.
翻译:近年来,模块化单体架构引起了从业者的关注,谷歌提出了"Service Weaver"框架,使开发者能够以模块化单体的方式编写应用,并将其部署为一组微服务。谷歌将其视为兼具两者优势的框架,这似乎成为软件架构的一种趋势。本文旨在理解行业内模块化单体的定义,并调研构建模块化单体架构的框架与案例。我们进行了系统性灰色文献综述,结果表明模块化单体结合了单体架构与微服务的优势。我们发现了三个框架及四个构建模块化单体架构的案例。总体而言,模块化单体是微服务的一种替代方案,同时也可作为系统向微服务迁移前的准备步骤。