마이크로서비스의 정의
소프트웨어애플리케이션으로 봤을 때 독립적인 배포가 가능한 작은 서비스로 비즈니스 목표를 달성하기 위해잘 정의되고 가벼운 메커니즘을 통해 통신한다.(단일책임, 느슨한 결합, 비즈니스 목적 제공, 경량 통신, 적은 LOC(line of code) 등)
장점
1.마이크로서비스는 비즈니스 로직에 집중할 수 있다.
2.클라이언트는 한번의 요청으로 인증,로깅,모니터링 등 api게이트웨이에서 처리 할 수 있는 모든 데이터를 가져올 수 있다.
3.클라이언트의 요청에 맞는 맞춤형 결과를 줄 수 있다.
4.부분적 오류를 처리 할 수 있다.
단점
1.api 게이트웨이에서 다양한 문제로 인해 성능이 저하 될 수 있다.
2.문제점들을 고려해서 디스커버리 서비스를 구현해야한다.
3.때로는 단일 장애 점짐이 된다.
4.전반적으로 시스템 복잡성이 증가한다
5.게이트웨이에 지나치게 많은 로직을 구현하면 다른 의존성 문제가 발생 할 수 있다.
이 정로로 내가 이해 한 Microservice에대한 개념이다