An Empirical Study on Precompilation as an Ops-oriented Micro-optimisation Strategy for Microservice-based Applications
摘要
Precompilation has been hypothesised as a promising strategy for Ops-oriented micro-optimisation of microservice-based applications. This paper presents an empirical study on evaluating the hypothesis that compiling Python-coded microservices into native C binaries during the containerisation phase can reduce runtime overhead and improve overall application efficiency. Firstly, we employed a micro-benchmark suite to investigate micro-optimisation effects on a single microservice with respect to the CPU, memory, disk, and network performance characteristics. Then, we developed a microservice-based application benchmark to compare application-level performance between its original and optimised forms. Beyond performance metrics, we further examined the implications of integrating precompilation into continuous integration and delivery (CI/CD). Our results show that CPU and network bound workloads see performance improvements of up to 27% and 44% respectively, however memory usage increases by approximately 30%, and build times extend significantly, negatively impacting the CI/CD workflows. This paper contributes evidence-based guidance for when precompilation is an effective micro-optimisation strategy and under what conditions it should (or should not) be integrated into software delivery processes.