PYROSOME: A RUNTIME FOR EFFICIENT AND FINE-GRAINED MICROSERVICES

JSYS 2024 October Papers Submission2 Authors

01 Oct 2024 (modified: 04 Oct 2024)JSYS 2024 October Papers SubmissionEveryoneRevisionsBibTeXCC BY-NC 4.0
Keywords: Microservices, JavaScript
TL;DR: Resubmission of revised paper.
Abstract: Developers have shifted from deploying applications on physical machines, to virtual machines, and to containers , and now to serverless functions. Such shift of abstractions have also changed the way applications are structured. Today’s cloud-native applications are naturally structured in a higher-level and more decomposed way. However, today’s cloud and serverless platforms are still layered on top of the same inefficient legacy software infrastructure and abstractions as in the past. We argue that these legacy layers are now redundant, and we explore a clean-slate cloud services runtime targeted toward microservice- and serverlessera JavaScript applications we call Pyrosome. Pyrosome provides simple programming interfaces for executing JavaScript code, storing and sharing data, and lowoverhead communication without worrying about resource allocation and scheduling. It leverages the V8 JavaScript runtime’s low-overhead language-based sandboxing that avoids the full state and scheduling costs of operating system processes or containers. This allows implementation of a holistic scheduler that quickly redistributes load among cores, exploits parallelism in applications, and avoids tail latency with execution-time-aware shardingpartitioning. The DeathStar- Bench microservices benchmarks show that Pyrosome speeds up microservice applications by as much as 4  and improves throughput by 10 . Additionally, we show Pyrosome balances load nearly instantly compared to standard microservice platforms.
Submission Number: 2
Loading

OpenReview is a long-term project to advance science through improved peer review with legal nonprofit status. We gratefully acknowledge the support of the OpenReview Sponsors. © 2025 OpenReview