8장. 성능 향상을 위해 APIcast 구성
이 문서에서는 APIcast에서 성능 문제를 디버그하는 일반적인 지침을 제공합니다. 또한 사용 가능한 캐싱 모드를 도입하고 성능 향상에 도움이 되는 방법과 프로파일링 모드에 대한 세부 정보를 설명합니다. 콘텐츠는 다음 섹션으로 구성되어 있습니다.
8.1. 일반 지침 링크 복사링크가 클립보드에 복사되었습니다!
일반적인 APIcast 배포에는 다음 세 가지 구성 요소를 고려해야 합니다.
- APIcast.
- 요청을 승인하고 사용량을 추적하는 3scale 백엔드 서버입니다.
- 업스트림 API입니다.
APIcast에서 성능 문제가 발생하는 경우:
- 문제를 담당하는 구성 요소를 식별합니다.
- 업스트림 API의 대기 시간을 측정하여 APIcast와 3scale 백엔드 서버에서 도입한 대기 시간을 확인합니다.
- 벤치마크를 실행하기 위해 사용 중인 것과 동일한 툴을 사용하여 새 측정을 수행하지만 업스트림 API를 직접 가리키는 대신 APIcast를 가리키십시오.
이러한 결과를 비교하면 APIcast 및 3scale 백엔드 서버에서 도입한 대기 시간에 대한 아이디어를 얻을 수 있습니다.
자체 관리 APIcast를 사용하는 호스팅(SaaS) 설치에서는 APIcast에서 도입한 대기 시간과 3scale 백엔드 서버가 높은 경우 다음을 수행합니다.
- APIcast가 배포된 동일한 머신에서 3scale 백엔드 서버에 요청합니다.
- 대기 시간을 측정합니다.
3scale 백엔드 서버는 버전 https://su1.3scale.net/status 을 반환하는 끝점을 노출합니다. 키, 제한 및 큐 백그라운드 작업을 확인하므로 권한 부여 호출에 더 많은 리소스가 필요합니다. 3scale 백엔드 서버는 몇 밀리초 내에 이러한 작업을 수행하지만 /status 끝점과 같은 버전을 확인하는 것보다 더 많은 작업이 필요합니다. 예를 들어 /status 에 대한 요청이 APIcast 환경에서 약 300ms를 사용하는 경우 권한 부여는 캐시되지 않은 모든 요청에 더 많은 시간이 걸릴 것입니다.