Cell-Based Architecture and Federated Microservices
Hand in glove?
Fundamentally, cell-based architecture (think biology not telephony) is a strategy for combining components together in order to reduce the number of deployment units in the system — something that is critical for the management of microservices. Apart from the fact that it is a tech-neutral, conceptual-level blueprint, not an implementation or tool, the main difference between it and federation is that federation attempts to reduce, not the number of deployment units, but the overall deployment footprint, by providing the same non-functional qualities (like deployment independence) only using far less compute (and human) resources. That said, both approaches are based on the same general principle: consolidation of assets. In the case of federation, it’s about decreasing distribution and increasing workload density. In CBA, it’s about decreasing operational complexity by organizing components into more manageable units of deployment.
Like federation, CBA also prescribes structural rigor to set clear and useful boundaries and relations between components in order to promote cohesion, prevent coupling and pave the way for organic evolution. In addition to component relations, it also outlines the connection between humans and technology, assigning ownership at the cell level.