DEVELOPMENT OF CASCADING CIRCUIT BREAKER SYSTEM USING EVENT-DRIVEN APPROACH IN MICROSERVICES
Resilience, particularly in handling service failures, is a significant challenge in microservices. This can be addressed using circuit breakers to limit calls to failed services. However, changes in the state of circuit breakers are only known by directly connected services, allowing subsequent...
Saved in:
Main Author: | |
---|---|
Format: | Final Project |
Language: | Indonesia |
Online Access: | https://digilib.itb.ac.id/gdl/view/85066 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Institut Teknologi Bandung |
Language: | Indonesia |
id |
id-itb.:85066 |
---|---|
spelling |
id-itb.:850662024-08-19T14:13:31ZDEVELOPMENT OF CASCADING CIRCUIT BREAKER SYSTEM USING EVENT-DRIVEN APPROACH IN MICROSERVICES Daffa Argakoesoemah, Mohamad Indonesia Final Project microservices, event-driven, circuit breaker INSTITUT TEKNOLOGI BANDUNG https://digilib.itb.ac.id/gdl/view/85066 Resilience, particularly in handling service failures, is a significant challenge in microservices. This can be addressed using circuit breakers to limit calls to failed services. However, changes in the state of circuit breakers are only known by directly connected services, allowing subsequent services in the chain to continue making calls. One study addresses this issue by creating a cascading circuit breaker system to prevent premature calls to failed services. Nevertheless, this system has limitations, such as the inability to inform newly deployed services and services that are independent of the service aware of the state change. Moreover, there are research opportunities to improve how circuit breakers operate. To address those existing problems, this final project develops an event-driven cascading circuit breaker system. This approach is chosen because an event-driven communication style offers better flexibility compared to the request-response style used in the existing cascading circuit breaker system. Additionally, improvements are made by providing a mechanism to reroute calls to alternative endpoints when an endpoint is in an open state. The cascading circuit breaker system is deployed as a sidecar to offer enhanced flexibility. The system was successfully implemented and orchestrated using Kubernetes. The information regarding the open state change was successfully broadcasted to both new services and services that are independent of the service aware of the state change. Moreover, the system successfully rerouted calls to alternative endpoints when an endpoint was in an open state. The system's average overhead is relatively low, at 2.86 ms. On the other hand, the time required to propagate the state change was measured at 2.12 minutes. text |
institution |
Institut Teknologi Bandung |
building |
Institut Teknologi Bandung Library |
continent |
Asia |
country |
Indonesia Indonesia |
content_provider |
Institut Teknologi Bandung |
collection |
Digital ITB |
language |
Indonesia |
description |
Resilience, particularly in handling service failures, is a significant challenge in
microservices. This can be addressed using circuit breakers to limit calls to failed
services. However, changes in the state of circuit breakers are only known by
directly connected services, allowing subsequent services in the chain to continue
making calls. One study addresses this issue by creating a cascading circuit breaker
system to prevent premature calls to failed services. Nevertheless, this system has
limitations, such as the inability to inform newly deployed services and services
that are independent of the service aware of the state change. Moreover, there are
research opportunities to improve how circuit breakers operate.
To address those existing problems, this final project develops an event-driven
cascading circuit breaker system. This approach is chosen because an event-driven
communication style offers better flexibility compared to the request-response style
used in the existing cascading circuit breaker system. Additionally, improvements
are made by providing a mechanism to reroute calls to alternative endpoints when
an endpoint is in an open state. The cascading circuit breaker system is deployed as
a sidecar to offer enhanced flexibility.
The system was successfully implemented and orchestrated using Kubernetes. The
information regarding the open state change was successfully broadcasted to both
new services and services that are independent of the service aware of the state
change. Moreover, the system successfully rerouted calls to alternative endpoints
when an endpoint was in an open state. The system's average overhead is relatively
low, at 2.86 ms. On the other hand, the time required to propagate the state change
was measured at 2.12 minutes. |
format |
Final Project |
author |
Daffa Argakoesoemah, Mohamad |
spellingShingle |
Daffa Argakoesoemah, Mohamad DEVELOPMENT OF CASCADING CIRCUIT BREAKER SYSTEM USING EVENT-DRIVEN APPROACH IN MICROSERVICES |
author_facet |
Daffa Argakoesoemah, Mohamad |
author_sort |
Daffa Argakoesoemah, Mohamad |
title |
DEVELOPMENT OF CASCADING CIRCUIT BREAKER SYSTEM USING EVENT-DRIVEN APPROACH IN MICROSERVICES |
title_short |
DEVELOPMENT OF CASCADING CIRCUIT BREAKER SYSTEM USING EVENT-DRIVEN APPROACH IN MICROSERVICES |
title_full |
DEVELOPMENT OF CASCADING CIRCUIT BREAKER SYSTEM USING EVENT-DRIVEN APPROACH IN MICROSERVICES |
title_fullStr |
DEVELOPMENT OF CASCADING CIRCUIT BREAKER SYSTEM USING EVENT-DRIVEN APPROACH IN MICROSERVICES |
title_full_unstemmed |
DEVELOPMENT OF CASCADING CIRCUIT BREAKER SYSTEM USING EVENT-DRIVEN APPROACH IN MICROSERVICES |
title_sort |
development of cascading circuit breaker system using event-driven approach in microservices |
url |
https://digilib.itb.ac.id/gdl/view/85066 |
_version_ |
1822998907966193664 |