일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- JPA스터디
- 스프링
- 알고리즘공부
- querydsl
- 스프링부트공부
- JPA예제
- 자바공부
- JPA
- 코테준비
- 기술면접공부
- 카프카
- 스프링부트
- Axon framework
- nestjs스터디
- Flutter
- 스프링공부
- 기술공부
- 스프링 공부
- 코테공부
- 플러터 공부
- nestjs
- nestjs공부
- K8S
- 프로그래머스
- JPA공부
- 자료구조공부
- JPA 공부
- 플러터 개발
- DDD
- Kafka
- Today
- Total
DevBoi
[Spring cloud] Circuit breaker 본문
써킷 브레이커....실무에서 몇번 쓰이고
사실 비즈니스 로직만 짜는 단순 개발자가 아니라... 미들웨어를 배치 받거나... 클라우드를 쓰면 항상 나오는 개념이다.
써킷 브레이커 대충 느낌만 알아서 정리를 해보자
Hystrix를 이용해서 써킷브레이커를 구현하는 경우가 많다.
우선 Circuit breaker란?
MSA에서 자주쓰이는 개념이다. 장애전파를 막아주는 역할을 한다.
예를 들어서 어떤 페이지를 호출했다고 가정해보자
그 페이지에서 여러 API를 호출하게 되는데, 해당 특정 한 API에서만 오류가 있다고 가정을 했을때,
해당 한개의 API 때문에 페이지가 504나, 에러페이지로 가는 경우가 있다.
이러한 경우를 막아주는, 즉 MSA환경에서 더 MSA같이 장애전파를 막아주는 개념이 써킷 브레이커다.
물론, 프론트단의 개발로 이를 할수도있지만, 프론트는 프론트 개발에 집중하고, 미들웨어, 게이트웨이에서 이러한 장애전파를 막아주어서
좀더 MSA에 집중할 수 있도록 해준다. (로깅도 비슷한 목적으로 미들웨어에서 관리한다. 사실 모든 서버가 로그를 구현하면되지만...그건좀... ㅋ)
또한
Client -> service A -> service B로 호출하는 가정을 해보자
Serivce A가 장애가 되어서 무응답이라면 상관없지만, 예를 들어서 Service B를 호출은 하되 장애상황이라고하면?
다같이 어깨동무 하고 장애상황이 발생할 것이다.
따라서, 중간에 써킷 브레이커를 둬서, Service A가 Service B를 호출하지 못하도록 해보자
사실 글만 보면 무슨 소리인지 감이 잘 안온다.
'Develop > [Spring cloud]' 카테고리의 다른 글
[Spring Cloud] Spring Cloud Config이론 (0) | 2022.11.21 |
---|---|
[Spring cloud] Gateway 2_데모 샘플 (0) | 2022.09.04 |
[Spring Cloud] Gateway 공부 1 (0) | 2022.08.31 |
[MSA] Spring Cloud Gateway (0) | 2022.08.14 |
[MSA] Circuit Breaker Pattern? (0) | 2022.08.14 |