클라이언트가 Amazon API Gateway에서 엣지 최적화 API에 대한 요청을 보낼 때 지연 시간이 길어집니다. 지연 시간 원인을 확인하려면 어떻게 해야 합니까?

엣지 최적화 API의 지연 시간 원인을 확인하려면 연결 경로의 각 부분(이러한 각 단계)에 걸리는 시간을 확인합니다.

중요: 이러한 단계는 엣지 최적화 API에 적용되지만 리전 API에 적용되지 않습니다. 엣지 최적화 API는 Amazon CloudFront 배포를 통해 액세스되기 때문에 연결 경로에 CloudFront 단계가 포함됩니다.

  1. DNS 이름 확인에 연결 시작.
  2. CloudFront에 연결하기 위해 TCP 핸드셰이크에 연결 시작.
  3. CloudFront에 연결하기 위해 SSL 핸드셰이크에 연결 시작.
  4. CloudFront에 클라이언트 HTTP 요청 보내기 연결 시작.
  5. CloudFront에서 전송된 첫 번째 바이트에 연결 시작.
  6. API 대한 요청 및 응답의 총 시간
  7. 요청을 처리하고 CloudFront 엣지 로케이션에 응답하는 API Gateway.
  8. API Gateway에서의 HTTP 요청에 응답하는 통합 엔드포인트.
  9. CloudFront 엣지 로케이션에 응답하는 API Gateway와 클라이언트에 응답하는 CloudFront 사이.

지연 시간의 컬 사용

프로세스에서 여러 단계의 기간을 확보하기 위해 Amazon Web Services - Labs GitHub 웹 사이트에서 curl_for_latency 스크립트를 사용합니다.

참고: URL, HTTP 방법 및 파라미터를 업데이트하여 API의 세부 정보를 일치시키십시오.

스크립트는 이러한 단계에 대한 시간을 반환합니다.

  1. DNS 이름 확인에 연결 시작: "time_namelookup"의 값.
  2. CloudFront에 연결하기 위해 TCP 핸드셰이크에 연결 시작: "time_connect"의 값.
  3. CloudFront에 연결하기 위해 SSL 핸드셰이크에 연결 시작: "time_appconnect"의 값.
  4. CloudFront에 클라이언트 HTTP 요청 보내기 연결 시작: "time_pretransfer"의 값.
  5. CloudFront에서 전송된 첫 번째 바이트에 연결 시작: "time_starttransfer" 값.
  6. API 대한 요청 및 응답의 총 시간: "time_total"의 값.

요청을 처리하고 CloudFront 엣지 로케이션에 응답하는 API Gateway의 시간을 확인합니다.

API Gateway가 요청을 처리하고 CloudFront 엣지 로케이션에 응답하는 데 걸리는 시간을 확보하기 위해 Amazon CloudWatch 콘솔을 사용하여 API Gateway에서의 시간 지연 측정치를 확인합니다. 이 측정치는 특정한 기간 동안 스테이지에 대한 모든 요청에 관한 집계 보기를 제공합니다.

CloudWatch 콘솔에서 1분 시간 내에 최장 처리 시간을 확인하기 위해 1분 간격최대의 지연 시간 측정치 그래프를 구성합니다.

API Gateway에서 HTTP 요청에 응답하는 통합 엔드포인트의 시간을 확인합니다.

통합 엔드포인트가 API Gateway에서의 HTTP 요청에 응답하는 데 걸리는 시간을 확보하기 위해 CloudWatch 콘솔을 사용하여 IntegrationLatency 측정치를 확인합니다. 이 측정치는 통합 요청 엔드포인트와 엔드포인트가 API Gateway에서의 요청에 응답하는 데 걸리는 시간에 대한 모든 요청에 관한 집계 보기를 제공합니다. 1분 간격최대의 IntegrationLatency 측정치 그래프를 구성합니다.

다른 옵션으로, CloudWatch Logs가 활성화되어 있는 경우 다음과 유사한 정보를 포함하는 항목의 CloudWatch Logs를 검토하십시오.

Received response. Integration latency: 325 ms

참고: AWS Lambda를 사용 중이고 통합 지연의 측정치가 높은 경우 Lambda 함수의 CloudWatch Logs를 검토하여 함수의 기간 증가 문제를 해결합니다. Lambda 함수의 첫 시작은 함수의 기간 측정치에 기록이 되지 않기 때문에 통합 지연 시간이 함수의 기간보다 더 길 수 있습니다. 첫 시작으로 함수의 기간을 확인하기 위해 AWS X-Ray를 사용합니다.

CloudFront 엣지 로케이션에 응답하는 API Gateway와 클라이언트에 응답하는 CloudFront 사이의 시간을 확인합니다.

CloudFront 엣지 로케이션에 응답하는 API Gateway와 클라이언트에 다시 응답하는 CloudFront 사이의 시간을 확보하기 위해 다음 단계에 따릅니다.

  1. "API 대한 요청 및 응답의 총 시간"의 시간을 잽니다.
  2. "CloudFront에 클라이언트 HTTP 요청 보내기 연결 시작"의 시간을 뺍니다.
  3. "요청을 처리하고 CloudFront 엣지 로케이션에 응답하는 API Gateway"의 시간을 뺍니다.
  4. 결과는 CloudFront 엣지 로케이션에 응답하는 API Gateway와 클라이언트에 다시 응답하는 CloudFront 사이의 시간입니다.

페이지 내용이 도움이 되었습니까? | 아니요

AWS 지원 지식 센터로 돌아가기

도움이 필요하십니까? AWS 지원 센터를 방문하십시오.

게시 날짜: 2018-12-12