SOA는 서비스 지향 설계 방식(Service Oriented Architecture)
SOA는 서비스 단위로 개발을 하고, 개발된 서비스들을 공유함으로써 재가용성을 늘리고 유연성을 확보하는 것을 목표
MSA는 마이크로 서비스 설계 방식(Micro Service Architecture)
MSA 또한 아주 작은 단위의 서비스로 소프트웨어를 구성함으로써 민첩하고 유연한 설계하는 것을 목표
SOA는 비즈니스 측면에서의 서비스 재사용성을 중요시하여
ESB(Enterprise Service Bus)라는 서비스 채널 이용 -> 서비스 공유, 재사용
MSA는 한 가지 작은 서비스에 집중하여
서비스 공유하지 않고 독립적 실행
soa - 재사용을 통한 비용 절감
msa - 서비스 간의 결합도를 낮추어 변화에 능동적으로 대응
SOA는 공통의 서비스를 esb에 모아 사업 측면에서 공통 서비스 형식으로 서비스 제공
msa는 각 독립된 서비스가 노출된 rest api를 사용
제일 큰 차이점
soa는 서비스를 개발하고 이를 최대한 재가용
msa는 서비스가 공유되기 보다 독립적으로 실행되는 것을 지향
SOA는 SOAP,WSDL,UDDI,ESB 등 서비스간 통합적이고 공통적인 방식으로 구성되고 통신 - > 서비스간 결합도 증가
MSA는 Restful API 방식으로 통신 -> 서비스간 결합없이 독립적인 환경과 통신 가능
MSA,SOA 모두 서비스 지향 설계 방식
하지만 MSA는 아주 작은 서비스 단위로 독립적으로 소프트웨어를 구성하기에 보다 민첩하고 유연한 구조가 필요한 환경에서 적합한 설계 방식