ArchicionadoArchicionado

Modular Monolith

EXPERT
This item has not been updated recently. Check its ring classification to assess its current relevance.
Adopt

Underlying idea is to operate a clear split between the way software is composed, from the way it is deployed. The way we chunk software into modules, fragment, staples, whatever the taxonomy we pick should not be correlated to the way those chunks will be assembled or deployed downstream. We should not make upstream assumptions regarding those aspects, because they may introduce more issues or biases than they planned to solve at the beginning. At this stage, you should think that it looks - a lot - like micro-services pattern. And you are right. But where the approaches differ is regarding the fact that the weaving stage is considered not only as a first-class citizen here but as a building block. Therefore, it implies you will have to leverage a structuring backbone to build upon and offload assembly and deployment facilities to. It is no more only standards (REST, gRPC, …) to obey and later figuring out how to efficiently assemble them.

Trial

First attempt to leverage actor model to build a distributed system, with the goal to improve scalability, resilience, and maintainability. The actor model is a conceptual model to effectively deal with concurrent computation.