기업들이 최신 애플리케이션을 구축하기 위해 API 우선 설계 방식을 도입함에 따라, 해당 API의 운영 성능과 가치를 측정하는 일이 최우선 과제가 되고 있습니다. API 메트릭을 핵심 성과 지표(KPI)와 명확하게 정의하고 연계하는 프레임워크를 구축하는 것은 성공적인 API 전략을 보장하기 위한 가장 중요한 단계 중 하나입니다.
일반적으로 KPI는 구체적인 목표와 연계됩니다. KPI에는 정해진 기간이 있으며, API 전략을 통해 달성해야 하는 성과에 맞춰 설정됩니다. 반면 API 메트릭은 유의미한 데이터 포인트입니다. 모든 메트릭이 KPI인 것은 아니지만, 모든 KPI는 메트릭에서 시작됩니다.
그렇다면 어떻게 시작해야 할까요? 먼저 처음부터 API 전략의 목표를 명확히 정한 다음, 그 목표에 부합하는 지표를 선택해야 합니다. 각 팀은 팀에 중요한 요소와 비즈니스에 필수적인 요소에 따라 서로 다른 지표를 측정하고 추적해야 한다는 점을 기억하세요.
크게 보면 기업이 추적할 수 있는 API 지표는 세 가지 유형으로 나뉘며, 각 유형은 서로 다른 질문에 답합니다:
- 운영 지표 – API가 필요한 수준의 안정성, 신뢰성 및 성능을 제공하고 있나요?
- 도입 지표 – 개발자들이 귀사의 API를 도입하여 사용하고 있나요?
- 제품 지표 – API가 비즈니스 목표 달성에 어떻게 기여하고 있나요?
이러한 상위 수준의 메트릭을 피라미드라고 생각해 보세요. 피라미드의 맨 아래에서는 운영 메트릭이 개별 API와 이를 지원하는 인프라의 전술적 성능을 측정합니다. 맨 위에서는 제품 메트릭이 API가 창출하는 비즈니스 가치를 측정합니다. 이 둘은 최종 사용자(개발자)의 API 프로그램 도입 증가 추이를 추적하는 도입 메트릭으로 연결됩니다. 일반적으로 제품 메트릭과 도입 메트릭은 측정해야 하는 비즈니스 성과에 맞춰지고, 운영 메트릭은 유지해야 하는 기술 표준에 맞춰집니다.
이 글에서는 반드시 측정해야 할 12가지 핵심 지표를 자세히 살펴보고, 이러한 지표가 인프라 및 애플리케이션 팀의 업무를 어떻게 지원하는지 논의하며, 각 지표가 KPI와 어떤 관련이 있는지 설명합니다.
운영 지표
처음 시작할 때는 일반적으로 운영 지표를 가장 먼저 측정합니다. 운영 지표는 전술적이며 API의 작동 방식에 대한 인사이트를 제공합니다. 운영 지표 자체가 KPI인 경우는 드뭅니다. 대신 팀에서 개발 중인 소프트웨어의 품질과 성능을 측정하는 데 도움이 됩니다. 또한 새롭게 발생하는 문제의 조기 징후를 파악하거나, 세부적으로 분석하여 핵심 KPI에 영향을 줄 수 있는 문제를 발견하는 데 도움이 됩니다.
추적하는 운영 지표는 팀과 담당 업무에 따라 달라집니다.
인프라 팀
플랫폼 운영팀은 여러 팀이 애플리케이션을 제공하는 데 사용하는 인프라와 기술 전반을 유지 관리하고 연계하며 보호하는 업무를 담당합니다. API 프로그램의 경우 여기에는 API 게이트웨이와 API 개발자 포털이 포함되는 경우가 많습니다.
Platform Ops와 같은 인프라 팀의 주요 지표는 다음과 같습니다:
- 가동 시간 – 가장 기본적인 지표 중 하나이지만, 가동 시간은 서비스의 가용성을 측정하는 대표적인 기준입니다. 이는 흔히 서비스 수준 계약(SLA)과 연계됩니다.
- CPU 및 메모리 사용량 – API 게이트웨이의 리소스 사용률을 추적하는 것은 인스턴스를 확장해야 할 시점을 파악하는 데 매우 중요합니다. 또한 문제가 발생하기 시작하거나 오류로 인해 사용량이 급증할 때 이를 조기에 알려주는 역할도 합니다.
- 전체 성공률 및 오류율 – API가 HTTP 오류(비
200) 상태 코드를 얼마나 자주 발생시키는지 측정하면 API에서 오류가 발생할 가능성을 파악하는 데 도움이 됩니다. 이 집계 지표는 팀에서 프로덕션 환경에 배포하는 API의 전반적인 품질을 판단하는 데 유용한 정보를 제공합니다.
애플리케이션 팀
API 개발자와 서비스 소유자로 구성된 애플리케이션 팀은 개별 서비스 또는 애플리케이션을 구축하고 운영할 책임이 있습니다. 이러한 서비스나 애플리케이션은 더 큰 제품의 일부로 사용되거나, 파트너와의 통합에 활용되거나, 개발자에게 API를 서비스 형태로 제공할 때 사용될 수 있습니다.
애플리케이션 팀은 다음 지표를 측정하는 것이 중요합니다:
- 분당 요청 수 – 이 성능 지표는 API가 처리하는 요청 수를 측정합니다. 시간에 따라 달라지지만, 일반적으로 API 사용자에게 최상의 경험을 제공할 수 있도록 요청 수를 줄이는 방향으로 관리해야 합니다.
- 평균 및 최대 지연 시간 – API가 요청을 수신하고 응답을 반환하는 데 걸리는 평균 시간을 추적하는 것은 매우 중요합니다. 단 하나의 느린 API도 사용자 경험에 부정적인 영향을 미치고, 결과적으로 비즈니스에도 악영향을 줄 수 있습니다.
- 분당 오류 수 – 다른 모든 것과 마찬가지로 완벽한 API는 없습니다. 장애는 발생 여부가 아니라 시기의 문제입니다. 오류를 모니터링하고, 오류가 갑자기 증가하기 전에 이를 해결할 수 있도록 미리 대응 계획을 마련해야 합니다.
API 운영을 자세히 살펴보고 비즈니스 관점에서 중요한 KPI와 메트릭이 무엇인지 알아보려면 NGINX가 무료로 제공하는 O’Reilly 전자책 Mastering API Architecture의 3~5장을 확인하세요.
도입 지표
API 우선 비즈니스에서는 엔지니어링 지표를 넘어 개발자가 API와 어떻게 상호작용하는지 파악하는 것이 중요합니다. 또한 개발자가 API를 도입하고 이를 통해 가치를 얻고 있는지 확인하려면 API 개발자 경험을 측정하고 모니터링해야 합니다.
도입 지표의 몇 가지 예는 다음과 같습니다:
- 고유 API 사용자 – 흔히 월간 사용자 수로 기간을 한정해 측정하는 이 지표는 얼마나 많은 개발자가 API를 도입하고 사용하고 있는지를 나타냅니다. 더 많은 개발자가 애플리케이션에 API를 통합함에 따라 이 지표가 지속적으로 증가하는 것이 이상적입니다.
- API 사용량 증가 – 이 지표 역시 API 도입 수준을 측정하며, 이를 위해 선호되는 경우가 많습니다. 이상적으로는 API를 사용하는 애플리케이션과 개발자 수가 증가함에 따라 API 트래픽도 매월 증가합니다.
- 첫 번째 호출까지 걸리는 시간 – 이 지표는 개발자가 계정을 만들고 API 자격 증명을 생성한 후 첫 번째 API 호출을 실행하기까지 걸리는 시간을 측정합니다. 개발자가 최대한 빠르게 API를 사용할 수 있도록 하는 것이 최우선 과제이므로, 이 지표는 전반적인 API 개발자 경험을 측정하는 데 가장 중요한 지표입니다.
참고: KPI 중 하나 이상은 API 도입률을 측정하도록 설정하는 것이 좋습니다. 이를 통해 API 프로그램의 전반적인 성장률을 산출할 수 있습니다. 예를 들어 API를 사용하여 지속적으로 운영되는 통합 기능이나 앱을 만든 개발자 수를 늘리는 것을 KPI로 설정할 수 있습니다.
제품 지표
API 제품 지표는 API의 가치를 이해하는 데 중요한 역할을 합니다. 수익에 직접 기여하는 API는 일부에 불과할 수 있지만, 모든 API는 비즈니스에 가치를 제공해야 합니다.
측정해야 할 주요 제품 지표는 다음과 같습니다:
- 직접 및 간접 수익 – 이 지표는 API가 수익에 기여하는 다양한 방식을 측정합니다. 일부 API는 직접 수익화되는 반면, 다른 API는 비즈니스 파트너와의 연동을 지원하거나 고객이 가치를 두는 서드 파티 연동에 활용됩니다. API 도입률과 마찬가지로 간접 수익을 추적하면 개발자가 파트너를 위한 수익 창출 앱을 개발하는 데 도움이 됩니다.
- API당 애플리케이션 수 – API는 재사용할 수 있어야 합니다. 이 지표는 하나의 API와 통합되는 애플리케이션 수를 측정하여 어떤 API가 가장 큰 가치를 제공하는지 파악합니다.
- 파트너 수 – API는 비즈니스 관계 형성을 지원하는 경우가 많습니다. 파트너의 API 통합 수를 추적하면 도입을 촉진하고 다른 사업 부문에 그 가치를 입증하는 데 도움이 됩니다.
참고: 이러한 제품 지표는 비즈니스 성과와 밀접하게 연관되어 있으며, 비즈니스 목표에 따라 일부 지표를 KPI로 설정할 수 있습니다. 예를 들어 API 전략의 비즈니스 목표가 타사 제공업체를 통해 더 많은 고객에게 도달하는 것이라면, API를 사용하는 파트너 수와 해당 연동을 통해 발생하는 간접 매출을 모두 추적해야 합니다.
비즈니스 및 운영 KPI를 포함한 API 제품 수명 주기에 관한 자세한 내용은 Mastering API Architecture의 3~5장을 참조하세요.
결론
API 메트릭과 비즈니스 KPI를 연계하는 것은 데이터 기반 의사 결정을 내리고 API 전략이 조직에 필요한 가치를 제공하도록 보장하는 핵심적인 방법 중 하나입니다. 그뿐만 아니라 API에 대한 가시성을 확보하면 인프라 및 애플리케이션 팀이 각 팀에 가장 중요한 운영 메트릭을 측정할 수 있습니다.
NGINX는 수십 가지의 중요한 API 메트릭에 대한 가시성을 제공합니다. 실시간 및 과거 메트릭을 확인하고, 선호하는 애플리케이션 성능 모니터링(APM) 또는 데이터 분석 솔루션으로 손쉽게 내보낼 수 있습니다.
지금 바로 NGINX Management Suite 30일 무료 평가판을 시작해 보세요. 여기에는 API Connectivity Manager, API 게이트웨이로 사용할 수 있는 NGINX Plus, 그리고 API 보안을 위한 NGINX App Protect가 포함되어 있습니다.
관련 블로그 게시물
시청하기: KubeCon North America 2023에서의 NGINX Gateway Fabric
이 영상에서는 KubeCon의 NGINX 부스를 찾아가, 저희가 공개한 Kubernetes Gateway API 구현을 살펴봅니다.
F5 NGINX로 대규모 WAF 플릿을 확인하고 관리하는 2가지 방법
앱 보안을 강화하는 두 가지 방법을 소개합니다. NGINX Management Suite를 통해 WAF 운영에 대한 가시성을 높이고, NGINX App Protect WAF를 활용해 코드형 보안을 구현하는 것입니다.
Ingress 컨트롤러 선택 가이드, 4부: NGINX Ingress Controller 옵션
개발 주체, 개발 철학, 프로덕션 환경 준비도, 보안 및 지원을 기준으로 어떤 NGINX Ingress 컨트롤러가 가장 적합한지 알아보세요.
진화하는 공격 환경에 NGINX App Protect Denial of Service가 적응하는 방법
NGINX App Protect Denial of Service(DoS)가 계층 7 DoS 공격을 방어하기 위해 완화 방법을 실시간으로 조정하는 방식을 설명합니다. 정상적인 사용자 행동과 서버 상태에 대한 모델을 생성하여 공격을 나타내는 이상 징후를 감지하고 맞춤형 완화 시그니처를 적용할 수 있습니다.
NGINX Instance Manager를 활용한 대규모 구성 업데이트 및 인증서 관리
NGINX Instance Manager 버전 1.0에는 두 가지 새로운 기능이 도입되었습니다. NGINX 인스턴스에 태그와 사용자 역할을 지정하면 전체 그룹에 구성을 한 번에 적용할 수 있습니다. 인증서 검사는 만료 예정인 인증서를 감지하여 서비스 중단을 방지할 수 있도록 인증서를 교체할 수 있게 해줍니다.
Netflix가 자사 CDN의 핵심으로 NGINX를 선택한 이유
Netflix가 글로벌 콘텐츠 전송 네트워크인 Open Connect의 스트리밍 미디어 기술로 NGINX를 선택한 이유를 NGINX 개발자 Gleb Smirnoff에게서 알아보세요.