새 팀에 합류하면서 새로운 개발 개념과 기능들이 필요하게되었다.

msa를 할 것으로 기대했으나, soa까지만 생각 한 팀장님의 발표를 들었다. 근데 orchestration 등등 을 생각 하신 것들 보니 msa로 발전 할 가능성 많다.

용어 정리

SOA

Service Oriented Architecture의 준말 로 서비스 중심으로 각각의 서비스를 나눈 후 해당 서비스들을 모아 어플리케이션을 구상하는 방식의 구조.

ex)

  • EJB?
  • SOAP?

MSA

Micro Service Architecture의 준말 로 각각의 최소한의 기능별로 최소한의 서비스들을 만든 후 해당 서비스들을 조합해 거대한 시스템을 구상하는 방식의 구조.

SOA와의 차이

SOA와 비슷해 보이지만 MSA에는 기본적으로 Service Orchestration(수평적 확장)이 들어간 방식을 취할 수 있으며(같은 서비스의 개수 늘리기) 수직적 확장(단일 서비스의 리소스 사용량 늘리기) 를 지양 한다.

SOA와 또 다른점은 MSA는 각 서비스간 의존성을 최소화 하는 것을 목표로 하고, 부가적으로 여러가지 다른 언어, 다른 프레임워크들로 합쳐서 만들어지는 방식이다. 즉 EJB 같은 같은 언어로만든 다른 여러 서비스들을 합쳐야하는 중앙집권적인 프레임워크 없음.