Microservice

TEDDY·2022년 12월 20일
0

CODECAMP

목록 보기
35/53
post-thumbnail

Microservice

: 마이크로서비스는 소프트웨어가 잘 정의된 API를 통해 통신하는 소규모의 독립적인 서비스로 구성되어 있는 경우의 소프트웨어 개발을 위한 아키텍처 및 조직적 접근 방식이다. 원래는 전체적으로 통제하던것을 API하나하나에 직접 연결해서 유지보수와 기능구현을 편하게 해주는 것이다.

Microservice의 장점

  1. 분산형 개발을 통해 효율적인 개발 가능(출시 기간 단축)
  2. 개별 서비스가 다른 서비스에 부정적인 영향을 주지 않으면서 작동할 수 있음(유지보수)
  3. 다른 서비스들과 유연하게 결합하며(언어의 제약 X) 향후 확장 및 새로운 기능 통합 등에 대비할 수 있음(높은 확장성)
  4. 기존의 모놀리식에 비해 더욱 모듈화되었기 때문에 배포에 따른 우려 사항들이 적어짐(손쉬운 배포)
  5. 개발자들이 각각의 서비스를 파악하고 개선하기에 용이해짐(편리한 액세스)

Microservice의 단점

  1. 큰 프로젝트에는 많은 서비스들이 존재하므로, 모든 서비스를 모니터링 하는 오버헤드가 증가함
  2. 서비스에서 다른 서비스를 호출하므로 서비스에 장애가 발생한 경우 경로 및 장애 추적이 힘들 수 있음
  3. 서비스별로 로그가 생성되기 때문에 중앙 로그 모니터링은 존재하지 않음
  4. 각 서비스는 API를 통해 통신하므로 네트워크 통신에 의한 오버헤드가 발생

0개의 댓글