Prioritizing Microservice Requests via Retries
DiffTry repurposes microservice retries as stateless prioritization, reducing rejections from incidental and adversarial overloads.
Independently managed microservices can temporarily miscoordinate, overload, and reject valuable transactions, and attackers could exploit that weakness with orchestrated overloads. Conventional retries neither protect high-value requests nor prevent performance-degrading retry storms. DiffTry turns retries into a lightweight, distributed, stateless prioritization mechanism that needs no overload sensing or cross-service coordination. An analytical model, simulation, and a drop-in Kubernetes service-mesh plugin showed measured rejection rates closely matching the analysis.
- Independent microservices can overload and reject valuable transactions.
- Ordinary retries fail to protect valuable work and can cause retry storms.
- DiffTry prioritizes retries without overload sensing or service coordination.
- Simulation and a Kubernetes service-mesh plugin matched the analysis.
- Products
- Kubernetes
From the original article
1 min read at arxiv.orgCloud services rapidly shift towards independently-managed microservices architectures. This independence may lead to temporary microservices miscoordination, resulting in overloads and rejections of valuable transactions. This weakness may further be exploited by attackers to launch overload attacks inflicting performance and cost damages.
By Ofek Lavi · arxiv.org
A short excerpt; the article and its images belong to the publisher. Summary, key facts and assessment above are AI-written from the article and can be wrong.