Microservices Are Dying, A New Method for Module Division Based on Universal Interfaces
By: Qing Wang, Yong Zhang
Potential Business Impact:
Lets computer programs change parts while running.
Although microservices have physically isolated modules, they have failed to prevent the propagation and diffusion of dependencies. To trace the root cause of the inter-module coupling, this paper, starting from the impact assessment approach for module changes, proposes a conceptual method for calculating module independence and utilizes this method to derive the necessary conditions for module independence. Then, a new system design philosophy and software engineering methodology is proposed, aimed at eliminating dependencies between modules. A specific pattern is employed to design a set of universal interfaces, serving as a universal boundary between modules. Subsequently, this method is used to implement a platform architecture named EIGHT, demonstrating that, as long as module independence is guaranteed, even a monolithic application within a single process can dynamically load, unload, or modify any part at runtime. Finally, the paper concludes that this architecture aims to explore a novel path for increasingly complex systems, beyond microservice and monolithic architectures.
Similar Papers
Microservices Is Dying, A New Method for Module Division Based on Universal Interfaces
Software Engineering
Lets software parts change without breaking everything.
Refactoring Towards Microservices: Preparing the Ground for Service Extraction
Software Engineering
Helps move big computer programs into smaller ones.
Towards Change Impact Analysis in Microservices-based System Evolution
Software Engineering
Helps software teams fix code changes faster.