Towards Soft Circuit Breaking in Service Meshes via Application-agnostic Caching
(2021)- Abstract
- Service meshes factor out code dealing with inter-micro-service communication, such as circuit breaking. Circuit breaking actuation is currently limited to an "on/off" switch, i.e., a tripped circuit breaker will return an application-level error indicating service unavailability to the calling micro-service. This paper proposes a soft circuit breaker actuator, which returns cached data instead of an error. The overall resilience of a cloud application is improved if constituent micro-services return stale data, instead of no data at all. While caching is widely employed for serving web service traffic, its usage in inter-micro-service communication is lacking. Micro-services responses are highly dynamic, which requires carefully choosing... (More)
- Service meshes factor out code dealing with inter-micro-service communication, such as circuit breaking. Circuit breaking actuation is currently limited to an "on/off" switch, i.e., a tripped circuit breaker will return an application-level error indicating service unavailability to the calling micro-service. This paper proposes a soft circuit breaker actuator, which returns cached data instead of an error. The overall resilience of a cloud application is improved if constituent micro-services return stale data, instead of no data at all. While caching is widely employed for serving web service traffic, its usage in inter-micro-service communication is lacking. Micro-services responses are highly dynamic, which requires carefully choosing adaptive time-to-life caching algorithms. We evaluate our approach through two experiments. First, we quantify the trade-off between traffic reduction and data staleness using a purpose-build service, thereby identifying algorithm configurations that keep data staleness at about 3% or less while reducing network load by up to 30%. Second, we quantify the network load reduction with the micro-service benchmark by Google Cloud called Hipster Shop. Our approach results in caching of about 80% of requests. Results show the feasibility and efficiency of our approach, which encourages implementing caching as a circuit breaking actuator in service meshes. (Less)
Please use this url to cite or link to this publication:
https://lup.lub.lu.se/record/f553ce58-a43f-4182-a9ed-44f3b85c83d1
- author
- Larsson, Lars ; Tärneberg, William LU ; Klein, Cristian ; Kihl, Maria LU and Elmroth, Erik
- organization
- publishing date
- 2021-04-06
- type
- Book/Report
- publication status
- published
- subject
- project
- Cyber Security for Next Generation Factory (SEC4FACTORY)
- E! Celtic-Plus 5G PERFECTA
- language
- English
- LU publication?
- yes
- id
- f553ce58-a43f-4182-a9ed-44f3b85c83d1
- alternative location
- https://arxiv.org/pdf/2104.02463.pdf
- date added to LUP
- 2021-06-03 09:41:27
- date last changed
- 2021-06-03 10:25:27
@techreport{f553ce58-a43f-4182-a9ed-44f3b85c83d1, abstract = {{Service meshes factor out code dealing with inter-micro-service communication, such as circuit breaking. Circuit breaking actuation is currently limited to an "on/off" switch, i.e., a tripped circuit breaker will return an application-level error indicating service unavailability to the calling micro-service. This paper proposes a soft circuit breaker actuator, which returns cached data instead of an error. The overall resilience of a cloud application is improved if constituent micro-services return stale data, instead of no data at all. While caching is widely employed for serving web service traffic, its usage in inter-micro-service communication is lacking. Micro-services responses are highly dynamic, which requires carefully choosing adaptive time-to-life caching algorithms. We evaluate our approach through two experiments. First, we quantify the trade-off between traffic reduction and data staleness using a purpose-build service, thereby identifying algorithm configurations that keep data staleness at about 3% or less while reducing network load by up to 30%. Second, we quantify the network load reduction with the micro-service benchmark by Google Cloud called Hipster Shop. Our approach results in caching of about 80% of requests. Results show the feasibility and efficiency of our approach, which encourages implementing caching as a circuit breaking actuator in service meshes.}}, author = {{Larsson, Lars and Tärneberg, William and Klein, Cristian and Kihl, Maria and Elmroth, Erik}}, language = {{eng}}, month = {{04}}, title = {{Towards Soft Circuit Breaking in Service Meshes via Application-agnostic Caching}}, url = {{https://arxiv.org/pdf/2104.02463.pdf}}, year = {{2021}}, }