8장. 성능 향상을 위해 APIcast 구성

이 문서에서는 APIcast의 성능 문제를 디버깅하기 위한 일반적인 지침을 제공합니다. 또한 사용 가능한 캐싱 모드를 소개하고 성능 향상과 프로파일링 모드에 대한 세부 정보를 설명합니다. 내용은 다음 섹션에서 구조화되어 있습니다.

8.1. 일반 지침

일반적인 APIcast 배포에는 고려해야 할 세 가지 구성 요소가 있습니다.

  • APIcast
  • 요청을 인증하고 사용을 추적하는 3scale 백엔드 서버
  • 업스트림 API

APIcast에서 성능 문제가 발생하면 다음을 수행합니다.

  • 문제를 담당하는 구성 요소를 식별합니다.
  • APIcast와 3scale 백엔드 서버가 도입하는 대기 시간을 확인하기 위해 업스트림 API의 대기 시간을 측정합니다.
  • 벤치마크를 실행하는 데 사용하는 것과 동일한 도구를 사용하여 새 측정을 수행하되 업스트림 API를 직접 가리키는 대신 APIcast를 가리킵니다.

이러한 결과를 비교하면 APIcast에서 도입한 대기 시간 및 3scale 백엔드 서버에 대한 아이디어를 얻을 수 있습니다.

자체 관리 APIcast를 사용한 호스팅(SaaS) 설치에서 APIcast에서 도입하고 3scale 백엔드 서버가 높은 경우 다음을 수행합니다.

  1. APIcast가 배포된 동일한 시스템에서 3scale 백엔드 서버에 요청합니다.
  2. 대기 시간을 측정합니다.

3scale 백엔드 서버는 버전을 반환하는 엔드 포인트를 표시합니다 . https://su1.3scale.net/status. 비교를 위해 인증 호출에는 키, 제한 및 대기열 백그라운드 작업을 확인하기 때문에 더 많은 리소스가 필요합니다. 3scale 백엔드 서버는 이러한 작업을 몇 밀리초 내에 수행하지만 /status 엔드포인트와 같은 버전을 확인하는 것보다 더 많은 작업이 필요합니다. 예를 들어 /status 에 대한 요청이 APIcast 환경에서 약 300ms를 사용하면 캐시되지 않은 모든 요청에 대해 인증에 더 많은 시간이 걸립니다.