Efficient Asynchronous RPC Calls for Microservices: DeathStarBench Study
Stijn Eyerman, Ibrahim Hur

TL;DR
This paper identifies thread management bottlenecks in asynchronous RPC calls within microservice benchmarks and demonstrates that replacing threads with fibers can significantly improve throughput and latency performance.
Contribution
It introduces a fiber-based implementation for asynchronous RPC calls in DeathStarBench, significantly enhancing throughput and reducing latency.
Findings
Peak throughput increased by up to 6x
Latency remained stable at high request rates
Thread management bottleneck was effectively mitigated
Abstract
Crucial in the performance of microservice applications is the efficient handling of RPC calls. We found that the asynchronous call implementation in a popular microservice benchmark suite, DeathStarBench, causes a bottleneck in thread management, reducing the peak throughput and increasing latency at high request rates. Replacing the threaded implementation with a fiber implementation increases peak throughput by up to 6x, meaning that the service can operate at a higher request rate without significantly increasing response latency.
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 · Software-Defined Networks and 5G · Cloud Computing and Resource Management
