paint-brush
API 관리 전략을 수립하는 방법은 무엇입니까?~에 의해@tracyvinson
943 판독값
943 판독값

API 관리 전략을 수립하는 방법은 무엇입니까?

~에 의해 Tracy Vinson4m2023/11/01
Read on Terminal Reader

너무 오래; 읽다

효과적인 API 관리 전략은 개발자 경험을 향상시키고, 소프트웨어 품질을 향상시키며, 개발 비용을 낮추고, 시스템 확장성을 가능하게 합니다.
featured image - API 관리 전략을 수립하는 방법은 무엇입니까?
Tracy Vinson HackerNoon profile picture
0-item

API 관리 전략을 수립하는 이유는 무엇입니까?

광범위하게 말하면 API(응용 프로그래밍 인터페이스)는 특정 작업을 수행하고 다른 사용자가 해당 작업을 수행하는 데 사용할 수 있는 프로토콜 집합을 정의하는 코드 모듈입니다. 그러나 오늘날의 세계에서는 API가 단순한 도구 그 이상으로 변했습니다. 이제 개별 작업을 수행하기 위해 애플리케이션에 쉽게 삽입할 수 있는 코드 경제가 방대하고 성장하고 있습니다. 효과적인 API 관리 전략은 개발자 경험을 향상시키고, 소프트웨어 품질을 향상시키며, 개발 비용을 낮추고, 시스템 확장성을 활성화하고, 보안 조치를 강화합니다.


조직에서 API를 관리하고 수익화 또는 브랜드 인지도 전략으로 해당 API를 대중에게 공개하는 것을 고려하고 있다면 API를 잘 관리하는 것이 중요합니다. 조직 외부의 사용자는 좋은 경험을 기대하며 API를 통해 그러한 경험을 제공할 준비가 되어 있어야 합니다.


이것이 견고한 API 관리 전략이 작용하는 곳입니다. 효과적인 API 관리 전략 계획을 세우는 데에는 효과적인 API 관리 영역 식별, API 관리 도구가 필요한지 여부, 사용해야 하는 도구 유형 결정, 해당 도구 선택이라는 세 가지 주요 구성 요소가 있습니다.



API 관리 전략



1단계: 효과적인 API 관리의 특징 파악

효과적인 API 관리에는 기업 또는 외부 사용자가 활용할 API의 모든 측면을 감독하는 것이 포함됩니다. 여기에는 성능, 보안, 권한 부여, 문서화, 분석 및 접근성이 포함됩니다.



효과적인 API 관리를 위한 기능



  1. 게이트웨이/액세스 API 게이트웨이는 퍼블릭 서비스와 백엔드 서비스 사이의 계층입니다. 이곳은 들어오는 요청을 가로채서 API의 올바른 부분으로 라우팅하는 곳입니다. 사용자의 속도와 일관성을 보장하려면 캐싱, 속도 제한 및 조절, 응답 번들링을 활용해야 합니다.


  2. 성능 목표 가용성, 속도 및 안정성은 공개 API의 중요한 측면입니다. 사용자에게 일정량의 가동 시간을 보장할 수 있어야 하며 충돌이나 가동 중지 시간이 발생할 경우 사용자 데이터를 보호하고 복구할 수 있어야 합니다. API의 목표를 식별하십시오.


  3. 보안 / 권한 유형 보안은 서버를 보호하는 것뿐만 아니라 민감한 클라이언트 데이터를 보호하는 데에도 중요합니다. API 전략에는 API 키, 클라이언트 인증서 또는 OAuth 전략으로 보호되는 전략이 포함되어야 합니다. API가 비공개가 아닌 데이터를 제공하더라도 API가 처리하는 네트워크 요청은 여전히 보호되어야 합니다.


  4. 인증/정책 관리 권한 부여 후, 사용자 역할 및 팀 액세스 설정, ID 및 권한 관리를 위해서는 인증 및 정책 관리가 중요합니다. 이는 어떤 사용자가 사용할 수 있는 리소스를 제한하여 보안을 강화하고 사용자를 위한 구성을 개선합니다.


  5. 개발자 포털/문서 직관적인 개발자 포털과 좋은 문서도 좋은 API 관리에 중요합니다. 개발자 포털에는 개발자가 엔드포인트를 테스트할 수 있는 샌드박스, 조직 내에서 사용 가능한 모든 API를 간략하게 설명하는 API 카탈로그, 시작하고 일반적인 작업을 수행하기 위한 가이드가 포함된 명확하고 검색 가능한 문서가 포함되어야 합니다.


  6. 분석 분석을 통해 사람들이 API를 어떻게 사용하고 있는지에 대한 귀중한 통찰력을 얻을 수 있으며, 이를 통해 가장 수익성이 높은 영역에 리소스를 집중할 수 있습니다. 또한 분석은 사용자에게 유용한 경우가 많습니다.


2단계: 프록시, 에이전트 또는 하이브리드 접근 방식 사용 고려

API 관리 솔루션은 이러한 작업 중 하나 이상을 처리할 수 있습니다. 솔루션은 프록시, 에이전트 또는 하이브리드 접근 방식을 통해 제공됩니다.



API 관리를 위한 접근 방식/솔루션



  1. 프록시 프록시 솔루션은 API와 사용자 사이에 위치합니다. 프록시는 캐싱과 같은 이점을 제공하여 성능을 최적화하고 갑작스러운 트래픽 급증으로부터 API를 보호합니다. 그러나 프록시는 잠재적으로 개인 정보 보호 및 대기 시간과 관련된 비용과 우려를 증가시킬 수 있습니다. 이러한 프록시 구현의 예로는 Apigee, Mashape, Mashery가 있습니다.


  2. 에이전트 에이전트는 서버와 함께 원활하게 작동하는 플러그인입니다. 프록시와 달리 API 호출을 방해하지 않습니다. 결과적으로 네트워크 지연이나 외부 종속성이 발생하지 않습니다. 그러나 캐싱과 같은 기능을 구현하는 것은 어려울 수 있습니다. 이러한 유형의 구현 예는 3scale입니다.


  3. 하이브리드 두 구현의 이점을 모두 얻으려면 에이전트와 프록시를 조합하여 사용할 수 있습니다. 예를 들어, 인증 목적으로 에이전트를 사용하는 동안 캐싱을 처리하기 위해 프록시를 선택할 수 있습니다. Apigee 및 3scale과 같은 회사는 하이브리드 솔루션으로 전환하고 있습니다.


3단계: API 관리에 가장 적합한 도구 결정

최고의 API 관리 도구 중 일부는 다음과 같습니다.



API 관리를 위한 최고의 도구



  • Mulesoft Anypoint: API 관리의 모든 측면을 처리할 수 있는 클라우드 기반 플랫폼입니다.
  • Apigee: API를 구축, 관리, 보호하는 데 사용할 수 있는 Google의 기본 API 관리 플랫폼입니다.
  • IBM API Connect: DevOps 라이프사이클을 지원하도록 구축되었습니다. 테스트를 위해 Selenium 및 Jenkins와 통합됩니다.
  • 3Scale: API를 패키징하기 위한 유연한 솔루션을 제공하는 RedHat의 API 관리 시스템입니다.


어떤 솔루션이 귀하에게 적합한지 결정하려면 예산, 기존 리소스(즉, 사내에서 이 작업을 수행할 수 있는 인력), 요구 사항 및 API의 예상 규모에 대한 평가가 필요합니다.


API를 내부적으로 관리할 수 있나요? 아니면 외부 도움을 받아야 하나요?

그것은 전적으로 당신에게 달려 있습니다. API 관리 전담팀을 둘 수 있을 만큼 큰 조직이 있다면 직접 처리할 수도 있습니다. 그러나 API 관리는 복잡하고 전문적인 작업이므로 회사의 다른 영역에서 이미 과중한 업무를 수행하는 엔지니어에게 단순히 업무를 맡겨서는 안 됩니다.