Skip to content

sangkyunyoon/coe-guide

Repository files navigation

Netflix OSS Overview

1. Monolithic to Microservice

  • Monolithic 구조에서 Microservice 구조로 바뀜
  • 사용자가 모든 서비스로 개별 접속 할수는 없음
  • Netflix 사례

2. Service Discovery

  • Service를 eureka에 등록 하여 id 기반으로 endpoint 탐색이 가능하게 함
  • Auto scaling에 유연하게 대처할 수 있음
  • Eureka 동작 방식

3. Client Load Balancing

  • 여러 instances에 대해 loadbalancing이 가능
  • Ribbon

4. Gateway

  • Zuul을 gateway로 사용하여 하나의 인입점을 만듦
  • Zuul이 모든 요청을 관련 서비스에게 routing 함
  • Zuul

5. Inner Service Call

  • Feign을 사용하여 다른 서비스 호출을 쉽게 할 수 있음
  • Feign

6. Circuit Breaker

  • 하위 서비스 장애 상황시 장애가 상위로 전파되는것을 방지 함
  • Fallback을 통해 장애시 미리 정의된 값으로 처리 할 수 있음
  • Hystrix
  • Hystrix 동작 방식

7. Distributed Log Tracking

  • Sleuth를 사용하여 분산 환경에서 로그 추적을 쉽게 할 수 있음
  • Sleuth

8. Ribbon and Hystrix on Zuul

  • Ribbon, Hystrix는 zuul에도 적용 가능

9. Config Server

  • 서비스들의 config를 통합 관리할 수 있음
  • Config 변경 내용 무중단 반영 가능

Circuit Breaker

  • Hystrix

Config

  • SpringCloudConfig

Gateway

  • Zuul

Load Balancing

  • Ribbon

Log

  • Sleuth
  • EFK

Messaging

  • RabbitMQ
  • Kafka

Monitoring

  • Spring Boot Admin

Service Discovery

  • Eureka

Sidecar Pattern

  • SpringCloudNetflixSidecar

Tracing

  • Pinpoint
  • Elastic APM

Etc

  • Feign

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 7