API Management
01
Why need APIM?
MSA 상승세
SOA 하락세
ESB 하락세
API Gateway 상승세
출처 : Google Trends
전세계 다양한 기업들이 사업을 성공적으로 이끌기 위해 API에 관심을 집중하고 있습니다.
더욱 유연한 비즈니스 환경을 구축하기 위해 API를 도입하고 있으며, 세계 3대 IT업계 리서치회사인 forrester Research에 의하면 미국에서는 전체 기업의 40%가 API Management에 투자를 하고 있다고 합니다.
02
API Management
MSA(Micro Service Architecture) 설계에 있어서 가장 중요하게 다루어 지는 컴포넌트중의 하나가 API management system 또는 API Gateway 입니다. API management는 마치 프록시 서버 처럼 API 앞에서 모든 API에 대한 end point를 통합하고, 몇가지 추가적인 기능을 제공하는 미들웨어로 SOA(Service Oriented Architecture)의 ESB(Enterprise Service Bus)보다 한층 더 발전된 시스템 입니다.


다음 부분에서 설명할 BMTech의 TETRA WING은 마이크로서비스에서 가장 중요하게 다루어지는 API Management 솔루션으로서 Hardware Layer 에서부터 OS Layer, Orchestration Layer, API Management Layer, Visualization Layer 까지 모든 솔루션이 연동, 통합된 Integrated API Management Platform입니다.
03
API Management를 위한 Layered 어프로치의 사례
아래의 그림과 같이 API Management가 반드시 필요한 이유중의 하나는 연동(Integration)이 될 수 있습니다. API 를 사용하는 사용자(Consumers)는 Mobile, Chatbots, Enterprises, Web Applications, Smart Watch, Middleware, IoT landscape & devices 로 정의 할 수 있는데, API 의 endpoints 는 SaaS applications, Mainframes, FTP file servers, Databases, Web Services, Legacy Systems, Legacy Applications 등이 될 수 있습니다.
여기에서 대부분의 고객이 겪는 가장 어려운 부분은 레거시 시스템과 프로토콜변환을 수행하는데 있어서의 연동(Integration) 입니다.

바로 여기에서 Layered API Approach로 패러다임을 전환할 수 있습니다. API Consumer Layer와 API Target Legacy Layer 사이의 이러한 통합(Integration) 문제를 극복하기 위한 방안으로 Layered approach 로 패러다임을 전환을 하면 접근성(Accessibility) 과 오너쉽(Ownership)이 명확해 집니다.
중앙IT 팀은 System APIs에대한 소유권을 보유하며 특정 개발팀이나 개발파트너팀은 APIs프로세스, Experience APIs는 어플리케이션개발팀이나 개발자들에게로 접근성과 오너쉽이 명확해집니다.
Process APIs :- Processing layer will perform Orchestration and helps to process the API gateway core functionalities like authentication, authorization & required functional business layer. System APIs :- System APIs layer refers to legacy modernization, connectivity to SaaS Applications, web services & Rest APIs. Experience APIs :- This layer is a purpose built to test the API mocks and exposed to Developer Portal
04
Future of APIs

Jeff Bezos
CEO of Amazon
Amazon’s API Mandate
· All teams will henceforth expose their data and functionality through service interfaces.
· Teams must communicate with each other through these interfaces.
· There will be no other form of inter-process communication allowed : no direct linking, no direct reads of another team’s data store, no shared-memory model, no back-doors whatsoever. The only communication allowed is via service interface calls over the network.
· It doesn’t matter what technology you use.
· All service interfaces, without exception, must be designed from ground up to be externalize-able. That is to say, the team must plan and design to be able to expose the interface to developers in the outside world. No exceptions.
“Anyone who doesn’t do this will be fired. Thank you; have a nice day!”
Everything API
“API First”