ESB와 API Gateway 의 차이점은 무엇일까요? 미팅이나 제품소개시에 고객이나 파트너 담당자로부터 정말 많이 받는 질문 입니다.
이번 기회를 통해 ESB와 API Gateway 를 비교해보고 언제, 어느 제품을 사용해야 하는 살펴 보겠습니다.
ESB(Enterprise Service Bus)는 기업내의 다양한 디지털 서비스를 상호 간에 연결하기 위한 레거시 기술입니다. API Gateway는 API를 통해 기업내 다양한 디지털 서비스에 대한 중계(Proxy)역할을 담당하는 기술 입니다. 현대화된 애플리케이션 기반의 아키텍처에서 API 게이트웨이는 오케스트레이션, 통합 및 보안 기능을 위해 ESB보다 선호되는 경우가 많습니다
ESB(Enterprise Service Buses)는 EAI(Enterprise Application Integration) 기업내 시스템 통합 및 연계 작업을 수행하기 위한 레거시 솔루션입니다. 그들은 전용의 추상화계층(Abstraction Layer)을 이용하여 다양한 애플리케이션 간의 전송 및 설정, 관리 등을 가능하게 하였습니다. 서비스의 구현이나 재사용을 위해 그들의 기능과 서비스를 노출하는 데 중점을 둔 제품이라고 할 수 있습니다.
그러나 기업의 요구 사항이 변화하고 점차 API 를 통한 비즈니스 구현 및 중요성이 증가함에 따라 API Gateway 가 기업내 디지털 서비스의 설정, 중계, 관리 등 오케스트레이션을 하는데 있어 더 유용한 도구임이 입증되고 있는 상황이 되었습니다.
현대 애플리케이션 설계 관점에서 API Gateway 는 ESB 와 비교하여 비즈니스의 디지털 기반의 전환을 행하는데 더 적잡한 솔루션입니다. 다음은 ESB와 API Gateway 의 주요 차이점 입니다.
- 서비스 오케스트레이션 (Service Orchestration)
API Gateway는 ESB보다 디지털 서비스, 데이터 또는 애플리케이션을 설정하고 관리하는데 더 적합하도록 설계되었습니다. API Gateway 는 좀 더 유연하고 플랫폼에 구애를 받지 않습니다. 다음은 몇 가지 주요 이점입니다.
• API Gateway 는 ESB가 할 수 없는 API 오케스트레이션을 가능하게 합니다 .
• 이는 사용자에게 의미 있는 기능을 제공하는 더 높은 수준의 비즈니스 서비스를 손쉽게 생성할 수 있게 합니다.
• API Gateway 는 API를 통하여 추상화계층(Abstraction Layer)을 제공하여 보안을 더욱 강화하고 위험으로 부터 내부 서비스를 보호 합니다.
• API Gateway 는 마이크로서비스 아키텍처에 적합하지만 ESB는 마이크로 서비스에 적합하지 않습니다. 물론 ESB 를 사용하여 여러 서비스를 통합하고 연계하서 서비스를 구현할 수는 있습니다만 ESB는 API를 다루기 위해 특별히 제작된 것이 아니므로 솔루션 자체에 큰 오버헤드를 유발 시킬 수 있습니다.
- 시스템 통합(Integration)
API Gateway 는 ESB보다 강력한 통합 기능을 제공합니다. API 통합 기능을 이용하여 다양한 서비스로부터 데이터를 집계하고 분석 할 수 있는 기능을 제공합니다.
최근 대부분의 주요 은행에서 시행하고 오픈뱅킹 시스템을 예를 들어 보겠습니다.
여러 분은 여러 은행에 개별적으로 갖고 있는 본인의 예금/적금/대출 등 계좌의 정보를 주로 사용하는 1개의 은행 시스템을 통하여 일괄적으로 조회하고 관리할 수 있는 서비스를 제공 받을 수 있습니다.
이들 시스템은 동일한 백엔드 서버와 애플리케이션에서 관리하지 않을 가능성이 큽니다. 그러나 오픈뱅킹을 위한 웹 또는 모바일 애플리케이션은 이러한 모든 계정에 대한 잔액 및 상태 정보를 검색하기 위해 단일 API 호출을 수행할 수 있도록 설계되고 개발되었기 때문 가능해질 수 있었습니다.
ESB에서도 이러한 유형의 작업을 수행할 수는 있지만 이러한 기능은 API Gateway 솔루션에서 더 쉽고 효율적으로 제공됩니다.
- API 친화력 (API Native)
대부분의 ESB는 SOAP가 지배적이었던 시대에 탄생했습니다. 어떠한 경우에는 느슨한 형태의 REST 기능으로 사용하기도 하지만 ESB는 여전히 SOAP 를 기본 통신 프로토콜로 사용하는 XML 기반의 웹서비스에 맞춰져 있습니다.
그러나 현대화된 API 를 이용한 통합 플랫폼은 다음과 같은 부분에 대한 깊은 고민이 추가적으로 필요하며 이는 API Gateway 의 특화된 기능이기도 합니다.
• 최신의 API 프로토콜 지원
• 컨텐츠 유형
• 보안 표준 및 접근 방식
• 정의 언어
- 성능
ESB는 웹서비스 기반의 통신 방식을 이용하여 EAI 처럼 별도의 어댑터는 필요 없어 졌지만 서비스 간의 통신을 Service Bus 라는 통신 백본을 이용하게 됩니다.
이는 아키텍처 적으로는 훌륭했지만 웹서비스 구현을 위한 스펙이 너무 복잡하였고 복잡한 XML을 파싱 하기에는 그 당시 컴퓨팅 시스템이 뒷받침을 못해 줌에 따라 ESB 솔루션 자체에 병목 현상이 발행하고 제대로된 성능을 발휘하지 못하는 결과로 나타나게 되었습니다.
기업에서 서비스하는 애플리케이션들이 현대화해 가면서 복잡한 형태의 SOAP 기반의 XML을 버리고 상대적으로 간단한 JSON이 주된 서비스로 사용되기 시작하게 되었고 이를 HTTP 통신에 이용하게 되면서 HTTP/JSON 기반의 REST API 가 대세로 자리 잡게 되었습니다.
기업 내부의 REST 기반의 API 서비스를 외부에서 제공하기 위한 방안으로 API Gateway 가 사용되기 시작하였고(Opne API 플랫폼),
기업 시스템 내부에서도 REST 기반의 API를 API Gateway 를 이용하여 마치 ESB 의 Service Bus 처럼 내부시스템을 통합하고 연결하는데 사용하게 되었습니다. (MSA)
- 결론
ESB와 EAI 같은 제품을 이용하여 기업의 데이터나 시스템을 통합하려는 시도와 전략은 현재 시점에서도 매우 중요하고 필수적인 고민이자 솔루션입니다. 하지만 4차 산업혁명시대의 도래와 더불어 새로운 디지털 트랜스포메이션 및 하이브리드 패러다임으로 인해 새로운 요구 사항이 빈번하게 발생하고 있는 상황입니다.
기업에서 시장 및 사용자와 경험을 지속적으로 피드백 받고 유지할 수 있도록 민첩하게 움직이기 위해서는 IT 조직이 시스템 연계를 관장하고 이를 구축하는 업무만 수행한다는 수동적인 통합 사고방식에서 벗어나는 통합을 위한 시작점이 되어야 합니다.
새로운 서비스 구성 요소를 연결하는 방법이 너무나도 많기 때문에 비즈니스 분석가, 개발자 및 사용자가 간의 긴밀한 유대가 지속되어야 합니다.
API Gateway 는 이런 전략의 핵심이며 ESB와 같은 레거시 솔루션의 대체제가 아닌 이들과 함께 작동하고 협업하여 기업이 최고의 사용자 경험을 제공하고 유지하고 향상 시키는데 필요한 기능을 제공해주는 솔루션의 선택지가 될 수 있습니다.
이데아텍의 독자적인 Non-Blocking 방식의 서비스 엔진을 탑재한 i-ONE API Gateway 는 다음과 같은 서비스를 제공해 드립니다.
• API 액세스를 위한 인증 및 권한부여
• 대용량 트랜잭션에 대한 정교한 서비스 라우팅 및 트래픽 제어
• GUI 기반의 간편한 API 등록 및 관리
• 오류 발생한 API 서비스 차단을 통한 장애 확산 방지
• 개발자를 위한 API 테스트 및 문서화 도구 제공
• 사용량 통계 분석 및 모니터링
• 오픈API 사용자를 위한 서비스 포털
#API #ESB #EAI #서비스오케스트레이션 #API통합 #통합모니터링 #API서비스포털 #APIGateway #이데아텍
ESB와 API Gateway 의 차이점은 무엇일까요? 미팅이나 제품소개시에 고객이나 파트너 담당자로부터 정말 많이 받는 질문 입니다.
이번 기회를 통해 ESB와 API Gateway 를 비교해보고 언제, 어느 제품을 사용해야 하는 살펴 보겠습니다.
ESB(Enterprise Service Bus)는 기업내의 다양한 디지털 서비스를 상호 간에 연결하기 위한 레거시 기술입니다. API Gateway는 API를 통해 기업내 다양한 디지털 서비스에 대한 중계(Proxy)역할을 담당하는 기술 입니다. 현대화된 애플리케이션 기반의 아키텍처에서 API 게이트웨이는 오케스트레이션, 통합 및 보안 기능을 위해 ESB보다 선호되는 경우가 많습니다
ESB(Enterprise Service Buses)는 EAI(Enterprise Application Integration) 기업내 시스템 통합 및 연계 작업을 수행하기 위한 레거시 솔루션입니다. 그들은 전용의 추상화계층(Abstraction Layer)을 이용하여 다양한 애플리케이션 간의 전송 및 설정, 관리 등을 가능하게 하였습니다. 서비스의 구현이나 재사용을 위해 그들의 기능과 서비스를 노출하는 데 중점을 둔 제품이라고 할 수 있습니다.
그러나 기업의 요구 사항이 변화하고 점차 API 를 통한 비즈니스 구현 및 중요성이 증가함에 따라 API Gateway 가 기업내 디지털 서비스의 설정, 중계, 관리 등 오케스트레이션을 하는데 있어 더 유용한 도구임이 입증되고 있는 상황이 되었습니다.
현대 애플리케이션 설계 관점에서 API Gateway 는 ESB 와 비교하여 비즈니스의 디지털 기반의 전환을 행하는데 더 적잡한 솔루션입니다. 다음은 ESB와 API Gateway 의 주요 차이점 입니다.
- 서비스 오케스트레이션 (Service Orchestration)
API Gateway는 ESB보다 디지털 서비스, 데이터 또는 애플리케이션을 설정하고 관리하는데 더 적합하도록 설계되었습니다. API Gateway 는 좀 더 유연하고 플랫폼에 구애를 받지 않습니다. 다음은 몇 가지 주요 이점입니다.
• API Gateway 는 ESB가 할 수 없는 API 오케스트레이션을 가능하게 합니다 .
• 이는 사용자에게 의미 있는 기능을 제공하는 더 높은 수준의 비즈니스 서비스를 손쉽게 생성할 수 있게 합니다.
• API Gateway 는 API를 통하여 추상화계층(Abstraction Layer)을 제공하여 보안을 더욱 강화하고 위험으로 부터 내부 서비스를 보호 합니다.
• API Gateway 는 마이크로서비스 아키텍처에 적합하지만 ESB는 마이크로 서비스에 적합하지 않습니다. 물론 ESB 를 사용하여 여러 서비스를 통합하고 연계하서 서비스를 구현할 수는 있습니다만 ESB는 API를 다루기 위해 특별히 제작된 것이 아니므로 솔루션 자체에 큰 오버헤드를 유발 시킬 수 있습니다.
- 시스템 통합(Integration)
API Gateway 는 ESB보다 강력한 통합 기능을 제공합니다. API 통합 기능을 이용하여 다양한 서비스로부터 데이터를 집계하고 분석 할 수 있는 기능을 제공합니다.
최근 대부분의 주요 은행에서 시행하고 오픈뱅킹 시스템을 예를 들어 보겠습니다.
여러 분은 여러 은행에 개별적으로 갖고 있는 본인의 예금/적금/대출 등 계좌의 정보를 주로 사용하는 1개의 은행 시스템을 통하여 일괄적으로 조회하고 관리할 수 있는 서비스를 제공 받을 수 있습니다.
이들 시스템은 동일한 백엔드 서버와 애플리케이션에서 관리하지 않을 가능성이 큽니다. 그러나 오픈뱅킹을 위한 웹 또는 모바일 애플리케이션은 이러한 모든 계정에 대한 잔액 및 상태 정보를 검색하기 위해 단일 API 호출을 수행할 수 있도록 설계되고 개발되었기 때문 가능해질 수 있었습니다.
ESB에서도 이러한 유형의 작업을 수행할 수는 있지만 이러한 기능은 API Gateway 솔루션에서 더 쉽고 효율적으로 제공됩니다.
- API 친화력 (API Native)
대부분의 ESB는 SOAP가 지배적이었던 시대에 탄생했습니다. 어떠한 경우에는 느슨한 형태의 REST 기능으로 사용하기도 하지만 ESB는 여전히 SOAP 를 기본 통신 프로토콜로 사용하는 XML 기반의 웹서비스에 맞춰져 있습니다.
그러나 현대화된 API 를 이용한 통합 플랫폼은 다음과 같은 부분에 대한 깊은 고민이 추가적으로 필요하며 이는 API Gateway 의 특화된 기능이기도 합니다.
• 최신의 API 프로토콜 지원
• 컨텐츠 유형
• 보안 표준 및 접근 방식
• 정의 언어
- 성능
ESB는 웹서비스 기반의 통신 방식을 이용하여 EAI 처럼 별도의 어댑터는 필요 없어 졌지만 서비스 간의 통신을 Service Bus 라는 통신 백본을 이용하게 됩니다.
이는 아키텍처 적으로는 훌륭했지만 웹서비스 구현을 위한 스펙이 너무 복잡하였고 복잡한 XML을 파싱 하기에는 그 당시 컴퓨팅 시스템이 뒷받침을 못해 줌에 따라 ESB 솔루션 자체에 병목 현상이 발행하고 제대로된 성능을 발휘하지 못하는 결과로 나타나게 되었습니다.
기업에서 서비스하는 애플리케이션들이 현대화해 가면서 복잡한 형태의 SOAP 기반의 XML을 버리고 상대적으로 간단한 JSON이 주된 서비스로 사용되기 시작하게 되었고 이를 HTTP 통신에 이용하게 되면서 HTTP/JSON 기반의 REST API 가 대세로 자리 잡게 되었습니다.
기업 내부의 REST 기반의 API 서비스를 외부에서 제공하기 위한 방안으로 API Gateway 가 사용되기 시작하였고(Opne API 플랫폼),
기업 시스템 내부에서도 REST 기반의 API를 API Gateway 를 이용하여 마치 ESB 의 Service Bus 처럼 내부시스템을 통합하고 연결하는데 사용하게 되었습니다. (MSA)
- 결론
ESB와 EAI 같은 제품을 이용하여 기업의 데이터나 시스템을 통합하려는 시도와 전략은 현재 시점에서도 매우 중요하고 필수적인 고민이자 솔루션입니다. 하지만 4차 산업혁명시대의 도래와 더불어 새로운 디지털 트랜스포메이션 및 하이브리드 패러다임으로 인해 새로운 요구 사항이 빈번하게 발생하고 있는 상황입니다.
기업에서 시장 및 사용자와 경험을 지속적으로 피드백 받고 유지할 수 있도록 민첩하게 움직이기 위해서는 IT 조직이 시스템 연계를 관장하고 이를 구축하는 업무만 수행한다는 수동적인 통합 사고방식에서 벗어나는 통합을 위한 시작점이 되어야 합니다.
새로운 서비스 구성 요소를 연결하는 방법이 너무나도 많기 때문에 비즈니스 분석가, 개발자 및 사용자가 간의 긴밀한 유대가 지속되어야 합니다.
API Gateway 는 이런 전략의 핵심이며 ESB와 같은 레거시 솔루션의 대체제가 아닌 이들과 함께 작동하고 협업하여 기업이 최고의 사용자 경험을 제공하고 유지하고 향상 시키는데 필요한 기능을 제공해주는 솔루션의 선택지가 될 수 있습니다.
이데아텍의 독자적인 Non-Blocking 방식의 서비스 엔진을 탑재한 i-ONE API Gateway 는 다음과 같은 서비스를 제공해 드립니다.
• API 액세스를 위한 인증 및 권한부여
• 대용량 트랜잭션에 대한 정교한 서비스 라우팅 및 트래픽 제어
• GUI 기반의 간편한 API 등록 및 관리
• 오류 발생한 API 서비스 차단을 통한 장애 확산 방지
• 개발자를 위한 API 테스트 및 문서화 도구 제공
• 사용량 통계 분석 및 모니터링
• 오픈API 사용자를 위한 서비스 포털
#API #ESB #EAI #서비스오케스트레이션 #API통합 #통합모니터링 #API서비스포털 #APIGateway #이데아텍