🤖 AI Summary
This study addresses the significant deployment cost increase—up to 50%—observed when migrating microservice-based applications from private to public cloud environments. We conduct a single-case empirical study using a mixed-methods approach: quantitative analysis of resource consumption and cloud configuration costs, qualitative interviews with engineering and operations teams, and systematic log auditing. Based on these analyses, we develop a usage-driven cost attribution model. Our work is the first to systematically identify three primary cost drivers: (1) licensing fees for relational database virtual machines, (2) over-provisioning of security log analytics services, and (3) inefficient third-party API invocations inducing ≥10% redundant workload. Leveraging these findings, we propose an end-to-end, usage-driven cost assessment framework. This framework delivers actionable, empirically grounded optimization pathways for cloud-native cost governance, bridging the gap between operational telemetry and financial accountability in production cloud environments.
📝 Abstract
Public cloud services are integral to modern software development, offering scalability and flexibility to organizations. Based on customer requests, a large-scale product development organization considered migrating the microservice-based product deployments of a large customer to a public cloud provider. We conducted an exploratory single-case study, utilizing quantitative and qualitative data analysis to understand how and why deployment costs would change when transitioning the product from a private to a public cloud environment while preserving the software architecture. We also isolated the major factors driving the changes in deployment costs. We found that switching to the customer-chosen public cloud provider would increase costs by up to 50%, even when sharing some resources between deployments, and limiting the use of expensive cloud services such as security log analyzers. A large part of the cost was related to the sizing and license costs of the existing relational database, which was running on Virtual Machines in the cloud. We also found that existing system integrators, using the product via its API, were likely to use the product inefficiently, in many cases causing at least 10% more load to the system than needed. From a deployment cost perspective, successful migration to a public cloud requires considering the entire system architecture, including services like relational databases, value-added cloud services, and enabled product features. Our study highlights the importance of leveraging end-to-end usage data to assess and manage these cost drivers effectively, especially in environments with elastic costs, such as public cloud deployments.