예정 | API7 DevPortal - API 관리 효율성을 한 단계 더 높이다
March 10, 2023
오늘날의 컴퓨터 세계에서 사람들은 소프트웨어 애플리케이션 간 정보 교환을 위한 수단으로 API를 사용하는 데 익숙해졌습니다. 휴대폰에서 날씨 업데이트를 확인하거나, WeChat 모멘트를 탐색하거나, ChatGPT와 상호작용하는 것과 같은 모든 행동은 API를 통해 가능해졌습니다. API는 당신(또는 당신의 소프트웨어)이 대상 소프트웨어 서비스와 상호작용할 수 있는 방법을 정의하는 일련의 통신 규약입니다.
API의 전체 생명주기 관리
회사가 성장함에 따라, 사용하는 API의 수가 급격히 증가할 수 있습니다. 이러한 API를 적절히 관리하지 못하면 인력 협업 비용 증가, 서비스 불안정성, 보안 취약점 등 여러 문제가 발생할 수 있습니다. 이러한 문제를 해결하기 위해 API 전체 생명주기 관리 개념이 개발되어 API 관리에 대한 포괄적인 접근 방식을 제공합니다.
API 생명주기는 설계부터 폐기까지 다양한 단계로 나눌 수 있으며, 일반적으로 계획 및 설계, 구현, 관리의 세 단계로 구성됩니다.
계획 및 설계
엔지니어로서, 우리는 항상 코드를 작성하기 전에 솔루션을 설계하는 것의 중요성을 강조하며, API도 예외는 아닙니다. 우리는 비즈니스 요구사항에 기반하여 API의 목적을 정의하고, 비즈니스 언어를 기술 용어로 번역하여 관련 기술 스택을 사용해야 합니다.
일반적으로, API 계획 및 설계는 문서화를 중심으로 이루어집니다. 예를 들어, RESTful API를 설계할 때, API 문서는 다음과 같은 정보를 포함해야 합니다:
- API 기능 설명
- API에 대한 해당 URL
- HTTP 요청 메서드
- 요청 매개변수, 요청 본문, 요청 헤더에 대한 설명(및 제약 조건)
- 가능한 응답 상태 코드 및 응답 본문 설명
명확하고 포괄적인 API 문서를 작성하는 방법에 대해 많은 연구가 이루어졌으며, 현재는 OpenAPI Specification V3를 사용하는 것이 일반적입니다.
실제 세계에서, API 계획 및 설계는 종종 여러 사람 간의 협업을 포함합니다. 이러한 요구를 충족시키기 위해, Postman과 같은 API 계획 및 설계를 위한 전용 플랫폼이 시장에 등장했습니다. 이러한 도구들은 사용자가 시각적으로 API를 설계할 수 있게 해주며, 협업 기능(대부분 유료 버전에서 제공)을 제공합니다. 또한 사용자는 특정 형식으로 API를 가져오고 내보내어 마이그레이션할 수 있습니다.
구현
API 설계가 완료되면, 엔지니어는 개발을 시작할 수 있습니다. 그들은 자신이 능숙한 기술 스택이나 조직이 요구하는 기술 스택을 선택하여 API를 구현할 수 있습니다. 개발 중에 엔지니어는 엔드투엔드 테스트를 추가하거나 QA 팀에 테스트를 요청하여 API를 테스트할 수도 있습니다. 구현이 완료되면, 엔지니어는 API 배포를 준비할 수 있습니다.
관리 단계
이전 단계에 비해, API의 관리 단계는 배포, 모니터링, 디버깅, 보안 강화 등 더 복잡합니다. 여기서 API 게이트웨이가 중요한 역할을 합니다. 배포 후 서비스 인스턴스를 직접 노출하는 것은 안전하지도 않고 확장 가능하지도 않습니다.
대신, API 게이트웨이는 프록시 역할을 하여 API 요청을 실제 서비스로 전달합니다. API 게이트웨이를 사용하면, 속도 제한과 같은 정책을 구성하여 API 서비스 과부하를 방지하고, 인증을 통해 승인된 사용자만 접근할 수 있게 하며, 관측 가능성을 통해 API 호출 상태를 실시간으로 모니터링할 수 있습니다. 요약하면, API 게이트웨이는 API의 보안, 확장성, 성능을 관리하는 데 필수적인 구성 요소입니다.
실제로, API는 정적이지 않으며 엔지니어는 기능을 지속적으로 반복하고 발생하는 결함을 해결해야 합니다. 따라서 API는 일반적으로 계획 및 설계, 구현, 관리의 다양한 단계를 오가며 완전히 폐기되기 전까지 반복됩니다. 이러한 순환 과정은 API가 생명주기 동안 최신 상태로 유지되고 효과적이도록 보장합니다.
API 소비
API 전체 생명주기 관리는 API 생산자(즉, API 개발자 및 유지보수자)의 관점에서 API 관리를 단순화합니다. 그러나 API 소비 문제, 즉 외부 개발자(동일한 회사의 다른 팀에서 온 개발자일 수 있음)가 API를 쉽게 통합할 수 있도록 하는 방법은 해결하지 못합니다. 외부 개발자가 당신의 API를 호출할 수 있도록 하기 위해서는 몇 가지 문제를 해결해야 합니다:
- 첫 번째 문제는 외부 개발자가 API 정보에 접근할 수 있도록 하는 방법입니다. 여기에는 API 접근 주소, 설명, 매개변수 제약 조건, 사용 예제 등이 포함됩니다. 이러한 상세한 정보는 외부 개발자가 API를 이해하고 효과적으로 사용하는 데 필수적입니다.
- 두 번째 문제는 API 보호입니다. 이는 API 생산자에게 매우 중요합니다. 승인된 개발자만 유효한 API 자격 증명을 사용하여 API에 접근하고 사용할 수 있도록 보장해야 합니다.
- 마지막으로, 커뮤니케이션 및 협업 비용을 줄이기 위해, API 소비는 가능한 한 셀프 서비스여야 합니다.
이러한 문제를 해결하고 API 소비를 최적화하기 위해 개발자 포털 개념이 도입되었습니다.
개발자 포털
개발자 포털은 외부 개발자가 API를 발견하고 접근할 수 있게 하며, 상세한 문서를 검토하고, API를 테스트하고, 유효한 API 자격 증명을 획득할 수 있게 합니다. 이는 외부 개발자를 위한 셀프 서비스 플랫폼으로, API에 더 효율적으로 접근할 수 있게 하고 API 생산자의 부담을 줄입니다.
개발자 포털은 일반적으로 관리 사이트와 개발자 사이트로 구성됩니다. 관리 사이트는 API 생산자(이하 관리자)가 사용하며, 개발자 사이트는 API 소비자(이하 개발자)가 사용합니다.
개발자 포털의 관리 사이트는 관리자가 API 출시 및 폐기를 효과적으로 관리할 수 있도록 하는 데 중요한 역할을 합니다. 출시된 API만 개발자 사이트에서 볼 수 있습니다. 관리자는 또한 QPS 제한 및 인증 요구사항과 같은 정책을 적용하여 API가 보호되도록 할 수 있습니다. 또한, 관리자는 개발자 사이트의 요청을 검토할 수 있으며, 여기에는 개발자 계정 등록 및 특정 API에 대한 구독 요청이 포함됩니다. 일부 개발자 포털 제품은 관리자가 개발자 사이트의 외관을 사용자 정의할 수 있는 옵션도 제공합니다. 예를 들어, 로고를 교체하거나 슬로건을 수정하는 등의 작업이 가능합니다.
개발자 사이트는 API 소비자를 위해 설계되었습니다. 여기서 개발자는 관리자가 게시한 모든 API를 볼 수 있으며, 상세한 정보를 확인하고 API 구독을 신청할 수 있습니다. 구독한 API에 대한 접근 자격 증명을 생성하고, API 문서를 참조하여 이를 통합하는 방법을 배울 수 있습니다.
일부 개발자 포털은 API 호출 분석을 통합하여, 관리 사이트에서 개발자의 관점에서 특정 API의 호출 횟수와 지연 시간을 표시합니다. 이 데이터는 API의 향후 반복 및 최적화를 위한 의사 결정의 기초로 사용될 수 있으며, 성능을 개선하는 데 도움이 됩니다.
API 생태계가 계속 발전함에 따라, API 수익화 개념이 점점 더 주목받고 있습니다. 개발자 포털은 API 수익화를 위한 귀중한 도구가 되었습니다. 관리자는 API에 대해 여러 구독 계획을 생성하고, 다양한 할당량 또는 API 호출 횟수에 따라 다른 요금을 청구할 수 있습니다.
출시 예정인 API7 DevPortal
API7.ai는 사용자에게 탁월한 API 관리 서비스를 제공하기 위해 최선을 다하고 있습니다. 우리는 최신 제품인 API7 DevPortal을 공개하게 되어 기쁩니다. 이는 Apache APISIX를 기반으로 구축된 우리의 엔터프라이즈급 API 게이트웨이 솔루션인 **API7 Enterprise**와 원활하게 통합되는 포괄적인 개발자 포털 제품입니다.
API7 DevPortal은 고객의 요구를 충족시키기 위해 설계되었으며, API 구독 및 개발자 등록 승인과 같은 기능을 제공합니다. 우리의 개발자 포털을 통해 고객은 게이트웨이 프록시 API를 손쉽게 게시할 수 있으며, 개발자 사이트에서 API에 대한 상세한 정보를 제공할 수 있습니다.
또한, 우리는 생산성을 향상시키고 수익 성장을 촉진하기 위해 워크플로우를 간소화하는 것의 중요성을 이해하고 있습니다. 따라서, API7 DevPortal은 앞으로 두 가지 중요한 반복을 거칠 예정입니다.
-
첫째, 우리는 클라이언트의 승인 워크플로우와 통합할 것입니다. 일부 클라이언트는 다양한 승인 작업을 관리하기 위한 통합 승인 플랫폼을 가지고 있습니다. 우리는 클라이언트가 기존의 승인 습관을 변경하지 않고도 API7 DevPortal을 사용할 수 있도록 하는 것을 목표로 합니다.
-
둘째, 우리는 API 수익화를 지원하여 클라이언트가 개발자에게 다양한 수준의 구독 서비스를 제공하고 요금을 징수할 수 있도록 도울 것입니다. 우리는 곧 API7 DevPortal을 시장에 출시할 예정입니다.
이 제품에 관심이 있으시면, 여기를 클릭하여 저희에게 연락해 주세요.
요약
개발자 포털은 API 소비를 관리하는 데 중요한 역할을 하며, API 생산자가 보안을 저해하지 않고 API 통합 문제를 효과적으로 해결하고 수익화를 촉진할 수 있게 합니다. 오늘날의 API 중심 세계에서, 팀의 API 관리 전략에 개발자 포털을 구현하는 것을 고려하는 것이 필수적입니다.