API(Application Programming Interface)는 전혀 새로운 것이 아니다. IT 업계에 종사한다면 하루에도 몇 번씩 들을 수 있는 용어. API는 일반적으로 내부 시스템과 외부 어플리케이션이 데이터를 주고 받을 때 일종의 관문 역할을 한다. 그렇다면 API Management Solution이란 무엇일까, 그리고 어떤 구조로 이루어져 있으며 어떤 기능을 하는 것일까? 지난 포스팅에 이어 조금 더 구체적으로 알아보려 한다.
2023.10.17 - [에디의 소소한 IT] - APIM 시장 성장 전망과 '국가 마이데이터 혁신 추진 전략'
과거의 시스템들은 외부 어플리케이션이나 외부 시스템과의 연동을 고려하지 않고 설계된 경우가 많았다. 특히 외부와의 접촉을 극도로 꺼려했던 공공이나 금융 시스템 들이 그러했다.
하지만 어느덧 소통과 공유의 세상이 되었다. 핀테크 회사들은 금융 기관에서 받은 데이터를 기반으로 고객에게 예적금 상품을 추천한다. 통신사 PASS앱 사용자들은 개인 정보 전송요구권을 기반으로 행정안전부 정부24 API를 통해서 주민등록등본을 발급 받는다.
편리하고 혁신적인 서비스의 지속적인 출현, 그리고 개인 데이터 주권의 강화에 따라 API는 계속 확산될 것으로 전망된다. 앞서 소개했던 '국가 마이데이터 혁신 추진 전략'이 성공적으로 이행된다면 확산 속도는 더욱 빨라질 것이며 그에 따라 API management 솔루션 도입에 대한 needs도 함께 커질 것.
APIM Solution(API Management Solution) 정의
APIM 솔루션은 API를 도입하고자 하는 기업과 기관, 단체가 이를 쉽게 구축하고 또 관리 및 운영할 수 있도록 지원하는 솔루션이다. 관리자는 APIM을 통해서 API의 전체 life cycle 즉, API 생성, 배포, 운영, 모니터링, 파기 등... 일련의 프로세스를 관리할 수 있다.
APIM 솔루션 구성
아래 그림은 API management 솔루션 전문 회사에서 발췌한 마이데이터 API management 플랫폼의 구조. 그림과 같이 APIM은 보통 네가지 주요 모듈로 구성된다.
- API gateway
외부로부터의 오픈 API 호출에 대한 인증/인가 및 트래픽 제어(Rate-limit) 등 API에 대한 인증/인가·보안·통제 기능을 제공하는 모듈. - API server / creator
외부로는 Gateway, 내부로는 레거시 시스템을 직접 연동하거나 FEP/MCI/EAI 등을 통해서 연동해주는 API 중계/브릿지 모듈. 전문 변환/검증을 수행하고 간단한 Bisness server 역할 수행. - API portal(Unified Portal)
API를 생성, 운영하는 관리자와 API를 사용하는 내외부 개발자들을 위한 포털. API 제공기관 및 이용기관 관리, API 라이프사이클 관리, 자격증명 및 TLS 인증서 관리, API export/import, API 개발자 커뮤니티 및 테스트 등의 기능을 제공.
API 생성, 승인, 배포, 운영, 파기 등 API lifecycle과 관련된 모든 프로세스를 관리할 수 있도록 GUI를 제공하는 서비스. - API monitoring tool
생성된 API가 내외부 개발자들로부터 어떻게 얼마나 사용되는지 확인하고 이를 분석하는 모듈.
※ FEP(Front End Processor) : 전위 처리기. 주 컴퓨터 시스템의 부하를 덜어주기 위해 입력되는 데이터를 미리 가공하고 처리해서 주 컴퓨터로 보내주는 역할을 한다. 사용자 단말기, 각종 입출력 장치, 데이터 통신 장치에서 주 컴퓨터로 연결되는 인터페이스 역할을 수행.
※ MCI(Multi channel integration) : ATM이나 웹서비스 또는 외부의 영업점 창구 등의 다양한 채널 데이터를 중간에서 통합하여 기업 내부의 프로세스와 연계시키는 시스템, 미들웨어 프레임워크
※ EAI(Enterprise application integration) : 연동되는 내부 시스템, 혹은 어플리케이션 들 간의 일종의 Middleware
전문적인 내용이 많아져서 그런지 조금 어렵다. 하지만 인내하면서 계속 들여다보면 조금씩 보이는 듯하다.
위의 내용을 정리하면 APIM(API management) 솔루션은 아래와 같이 정의될 수 있다.
- APIM(API management) 솔루션은 오픈 API를 도입하고자 하는 기업이나 기관이 빠르고 쉽게 API 인프라를 구축할 수 있도록 지원하는 SW+HW 플랫폼이다.
- APIM은 직접 혹은 MCI/EAI/FEP 등을 통해서 내부 레거시와 연동함으로써 내외부, 특히 외부의 데이터 요청(request)에 응답(response)한다.
- API 생성, 승인, 배포, 운영, 파기 등의 API lifecycle 과 관련된 일련의 프로세스를 관리한다.
또, APIM(API management) 솔루션은 API gateway, API server/creator, API portal 그리고 API monitoring tool로 구성된다.
(조금 뜬금 없지만)음... 우리집에서 가위를 빌려가고 싶어하는 친구가 있다고 한번 가정해보자.
API gateway는 초인종과 인터폰을 포함한 대문이라고 볼 수 있겠다.
친구는 초인종을 누르고 인터폰을 통해 인증 받을 수 있으며 이후 우리집으로 들어올 수 있다. 빌리고자 하는 친구가 한꺼번에 몰리는 경우, 여기서 스케줄을 잡을 수도 있다.
API server는 거실 정도라고 보면 될 듯하다.
대문을 통과한 친구와 나는 거실에 앉아 이야기를 나눈다. 친구는 무슨무슨 일로 가위를 빌리러 왔다고 나에게 말할 것이다. 그러면 나는 복잡한 우리집 주방(주방은 레거시다. 복잡해서 외부인이 직접 출입할 수 없다.)으로 들어가 가위를 찾아내 친구에게 건내준다.
API portal은 친구들이 우리집에서 물건 빌릴 수 있는 방법을 관리하는 곳이다.
이 portal에 접속하면 내가 없을 때는 어떻게 해야 가위를 빌려갈 수 있는지, 가위 이외의 다른 물건을 빌릴 때는 어떻게 해야 하는지, 나만 있을 때 누나의 친구가 어떻게 하면 나에게서 물건을 빌려갈 수 있는지 알 수 있다. 또 어떤 친구는 새로 산 고가의 노트북을 빌려갈 수 있는 방법을 알려달라고 요청할 수 있다. 내가 방법을 알려줄지, 또 그것을 승인할지는 잘 모르겠지만 ㅋ
API monitoring tool은 빌려간 물건 장부, 혹은 CCTV라고 보면 될 것 같다.
하루, 혹은 한달 동안 우리집에 누가 와서 무엇을 얼마나 빌려갔는지 API monitoring tool이 지켜보고 있다. 나중에 어떤 물건이 가장 인기가 좋은지, 누가 가장 많이 빌려가는지에 대한 데이터를 잘 살펴보면 살림 장만하는데는 물론, 친구나 이웃을 관리하는데도 참고가 될 듯하다.
상기의 예가 너무 비근할 수도 있겠지만 나름 APIM(API management) 솔루션을 이해하기 쉬운 방법이 아닐까 싶다. 어려운 IT 관련 지식을 이해할 때 내가 자주 사용하는 방식이다. APIM이 무엇인지 궁금하신 분들에게 도움이 되길 바라며 이상 포스팅 마친다.
'에디의 소소한 IT' 카테고리의 다른 글
신한 슈퍼솔이란? 은행 카드 증권 보험, 신한금융그룹 5개사 통합 앱 (0) | 2023.12.31 |
---|---|
PASS 모바일 신분증 등록 커피쿠폰 이벤트. 블록체인 기반 DID 신분증 (0) | 2023.12.12 |
APIM 시장 성장 전망과 '국가 마이데이터 혁신 추진 전략' (2) | 2023.10.17 |
알파스캔 27인치 AOC 모니터 개봉과 조립 후기. 드라이버 필요 No (0) | 2023.05.26 |
알리익스프레스 사기 2테라 USB 메모리 환불. h2testw로 용량 측정 (0) | 2023.05.01 |
댓글