728x90
장애 시나리오
Hystrix, Eureka, Ribbon을 사용한 우리 System은 어느정도 Resilient 한거야?
특징 API 서버 한대가 Down 된다면?
흔한 장애 Case
- 가장 먼저 즉시 대응하는 것은 Ribbon Client
Ribbon Client에는 Retry 기능이 탑재
- Netflix Ribbon에는 자체 구현
- Spring Cloud에서는 Camden.SR7부터 Spring Retry기반으로 대체
<product>:
ribbon:
MaxAutoRetries: 0
MaxAutoRetriesNextServer: 2
retryableStatusCodes: 503
Spring Retry는 Optional Dependency로 직접 Dependency를 명시할 경우에만 동작
그후 일정시간 지나면..
Eureka 서버에서 해당 Instance 목록이 사라짐
- 특정 Instance로 부터 설정된 횟수 이상의 Heartbeat 유실시 Instance가 Down된 것으로 간주
Instance 다운 후 Eureka 목록에서 사라지는 시간은 관련된 설정에 따라 다름
Hystrix는 뭐하고 있니?
3대 서버중 1대가 Down되었다면 에러 비율은 대략 33%
- Hystrix 설정이 에러 비율 50% 였다면 Circuit은 오픈 안됨
- 단, Timeout, Isolation, Fallback은 동작하여 적잘한 조치
Appendix 참조
728x90
'SpringCloud' 카테고리의 다른 글
[11번가 Spring Cloud 기반 MSA로의 전환] 6. 모니터링 (0) | 2021.02.08 |
---|---|
[11번가 Spring Cloud 기반 MSA로의 전환] 5. 11번가 MSA 환경 구성 (0) | 2021.02.08 |
[11번가 Spring Cloud 기반 MSA로의 전환] 3. Hystrix, Ribbon, Eureka 적용 in 11st (0) | 2021.02.08 |
[11번가 Spring Cloud 기반 MSA로의 전환] 2. Deep Dive into Hystrix, Ribbon, Eureka (0) | 2021.02.08 |
[11번가 Spring Cloud 기반 MSA로의 전환] 1. 왜 MSA 를 도입하는지 어떻게 MSA를 도입할 것인지? (0) | 2021.02.08 |
댓글