Microservices Are Dying, A New Method for Module Division Based on Universal Interfaces
Qing Wang, Yong Zhang

TL;DR
This paper introduces a new module division method based on universal interfaces to eliminate dependencies, enabling dynamic system modifications and proposing an architecture that surpasses traditional microservice and monolithic models.
Contribution
It presents a novel approach for module independence using universal interfaces, facilitating dynamic modifications and a new system architecture beyond microservices.
Findings
Demonstrates the EIGHT platform architecture with dynamic module management.
Shows that guaranteed module independence allows runtime modifications.
Proposes a universal interface pattern for module boundary definition.
Abstract
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,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware System Performance and Reliability · Advanced Software Engineering Methodologies · Software Engineering Research
