English

PerfSim: A Performance Simulator for Cloud Native Microservice Chains

Distributed, Parallel, and Cluster Computing 2021-12-30 v2 Performance

Abstract

Cloud native computing paradigm allows microservice-based applications to take advantage of cloud infrastructure in a scalable, reusable, and interoperable way. However, in a cloud native system, the vast number of configuration parameters and highly granular resource allocation policies can significantly impact the performance and deployment cost. For understanding and analyzing these implications in an easy, quick, and cost-effective way, we present PerfSim, a discrete-event simulator for approximating and predicting the performance of cloud native service chains in user-defined scenarios. To this end, we proposed a systematic approach for modeling the performance of microservices endpoint functions by collecting and analyzing their performance and network traces. With a combination of the extracted models and user-defined scenarios, PerfSim can then simulate the performance behavior of all services over a given period and provide an approximation for system KPIs, such as requests' average response time. Using the processing power of a single laptop, we evaluated both simulation accuracy and speed of PerfSim in 104 prevalent scenarios and compared the simulation results with the identical deployment in a real Kubernetes cluster. We achieved ~81-99% simulation accuracy in approximating the average response time of incoming requests and ~16-1200 times speed-up factor for the simulation.

Keywords

Cite

@article{arxiv.2103.08983,
  title  = {PerfSim: A Performance Simulator for Cloud Native Microservice Chains},
  author = {Michel Gokan Khan and Javid Taheri and Auday Al-Dulaimy and Andreas Kassler},
  journal= {arXiv preprint arXiv:2103.08983},
  year   = {2021}
}

Comments

for the dataset used for evaluation, see https://ieee-dataport.org/documents/experiments-data-used-evaluating-perfsim-simulation-accuracy-based-sfc-stress-workloads and https://ui.neptune.ai/o/kau/org/PerfSim/experiments. Source code will be available via perfsim.io in end of January 2022

R2 v1 2026-06-24T00:13:53.040Z