본문 바로가기

Personal/Cloud

Microservice

개요

예시로 아마존닷컴과 넷플리스가 있음. 위의 그림은 마이크로서비스의 호출 작용 그림이다.

 

Microservice의 특징

1) Challenges

-> 기존 방식에서 많은 변화가 필요하다.

2) Small Well Chosen Deployable Units

-> 독립적으로 배포 가능한 소규모 서비스들로 구성되어야 한다.

3) Bounded Context

-> 서비스들의 경계가 구분되어야 한다.

4) RESTful

-> 서로 REST api 로 통신하는 것을 권장한다.

5) Configuration Management

-> 환경 설정을 외부에 있는 시스템으로 관리하겠다.

6) Cloud Enabled

-> Cloud Native 기술을 최대한 활용할 것임. 클라우드 상태에서 운영할 것임.

7) Dynamic Scale Up And Scale Down

-> 동적으로 스케일 업이나 다운이 가능해야 한다.

8) CI/CD

-> 여러 개발자가 동시에 작업하고 있는 마이크로 서비스 개발 환경에서는 CI/CD가 중요하다

9) Visibility

-> 시스템의 구성 요소 또는 마이크로서비스 간의 상태, 동작 및 상호 작용에 대한 투명성과 관찰 가능성을 말한다.

 

Micrservice 도입 전 고려사항

- 독립적인 라이프 사이클

- 독립적인 확장성

- 격리된 오류

등을 고려해야 한다.