Long live the image: on enabling resilient production database containers for microservice applications

  • Zheng Li
  • , Nicolás Saldías-Vallejos
  • , Diego Seco
  • , María Andrea Rodríguez
  • , Rajiv Ranjan

Research output: Contribution to journalArticlepeer-review

95 Downloads (Pure)

Abstract

Microservices architecture advocates decentralized data ownership for building software systems. Particularly, in the Database per Service pattern, each microservice is supposed to maintain its own database and to handle the data related to its functionality. When implementing microservices in practice, however, there seems to be a paradox: The de facto technology (i.e., containerization) for microservice implementation is claimed to be unsuitable for the microservice component (i.e., database) in production environments, mainly due to the data persistence issues (e.g., dangling volumes) and security concerns. As a result, the existing discussions generally suggest replacing database containers with cloud database services, while leaving the on-premises microservice implementation out of consideration. After identifying three statelessness-dominant application scenarios, we proposed container-native data persistence as a conditional solution to enable resilient database containers in production. In essence, this data persistence solution distinguishes stateless data access (i.e., reading) from stateful data processing (i.e., creating, updating, and deleting), and thus it aims at the development of stateless microservices for suitable applications. In addition to developing our proposal, this research is particularly focused on its validation, via prototyping the solution and evaluating its performance, and via applying this solution to two real-world microservice applications. From the industrial perspective, the validation results have proved the feasibility, usability, and efficiency of fully containerized microservices for production in applicable situations. From the academic perspective, this research has shed light on the operation-side micro-optimization of individual microservices, which fundamentally expands the scope of “software micro-optimization” and reveals new research opportunities.
Original languageEnglish
Number of pages16
JournalIEEE Transactions on Software Engineering
Early online date01 Aug 2024
DOIs
Publication statusEarly online date - 01 Aug 2024

Publications and Copyright Policy

This work is licensed under Queen’s Research Publications and Copyright Policy.

Fingerprint

Dive into the research topics of 'Long live the image: on enabling resilient production database containers for microservice applications'. Together they form a unique fingerprint.

Cite this