Service-Oriented Architecture 플랫폼

SOA(Service-Oriented Architecture)는 조직에서 비즈니스 목표 달성을 위해 느슨하게 결합된 서비스를 공유하고 재사용할 수 있게 해 주는 응용 프로그램 플랫폼입니다. 이 플랫폼은 느슨하게 결합된 서비스를 통해 비즈니스 목표를 달성할 수 있도록 표준화된 통신 프로토콜을 사용합니다.
apmdevops104kr
SOA(Service-Oriented Architecture)는 조직에서 비즈니스 목표 달성을 위해 느슨하게 결합된 서비스를 공유하고 재사용할 수 있게 해 주는 응용 프로그램 플랫폼입니다. 이 플랫폼은 느슨하게 결합된 서비스를 통해 비즈니스 목표를 달성할 수 있도록 표준화된 통신 프로토콜을 사용합니다.
다음과 같은 장점이 있습니다.
  • 비즈니스의 민첩성과 유연성을 높일 수 있습니다.
  • 고객 서비스와 효율성을 개선할 수 있습니다.
  • 개발 비용을 절감할 수 있습니다.
그러나 복잡한 SOA 환경을 모니터링 및 관리하는 것은 기존의 클라이언트-서버 환경을 관리하는 것보다 어려울 수 있습니다.
기존의 클라이언트-서버 환경에서는 클라이언트와 제한된 개수의 서버 사이에 직접 통신이 사용됩니다. 문제가 발생하면 개별 비즈니스 트랜잭션에 관련된 시스템이 몇 개뿐이므로 오류의 원인을 찾기가 대체로 쉽습니다. 트랜잭션에 직접 관련된 특정 시스템을 검사하여 문제의 원인을 격리할 수 있습니다.
그러나 웹 응용 프로그램 서버가 여러 클라이언트 서버 시스템 간에 응용 프로그램에 대한 액세스를 배포하는 중심 역할을 하는 경우에는 문제의 원인을 식별하기가 어렵습니다. 성능 저하, 오류 또는 작업 실패는 웹 서버가 연결된 인프라에 속한 사실상 모든 구성 요소 또는 컴퓨터로 인해 발생할 수 있습니다.
서비스 지향 아키텍처를 사용하면 응용 프로그램 성능과 가용성의 모니터링이 좀 더 복잡해집니다. SOA의 경우 느슨하게 연결된 서비스는 표준화된 통신을 사용하여 서로 다른 플랫폼에서 실행되는 응용 프로그램을 통합하고 확장합니다. 이러한 서비스는 비즈니스 논리를 기본 운영 체제나 플랫폼과 분리하므로 조직에서는 민첩성을 높이고 시장이나 제품의 변화에 보다 빠르게 대처할 수 있습니다. 각 서비스가 복잡한 또는 여러 단계로 이루어진 비즈니스 프로세스의 특정 부분을 처리하도록 설계할 수 있어 이기종 환경에서 종속성 체인을 만들 수 있습니다.
서비스 지향 아키텍처를 사용하면 조직에서 서비스를 다시 사용하거나, 수정하거나, 독립된 구성 요소로서 대체할 수 있으므로 응용 프로그램을 보다 빠르고 비용 효율적인 방법으로 개발 및 배포할 수 있습니다. 그러나 이와 같이 효율적인 모듈 방식 응용 프로그램 아키텍처도 응용 프로그램 관리 측면에서는 문제점을 가지고 있습니다.