적용 대상: 개발자 | 기본 | 기본 v2 | 표준 | 표준 v2 | 프리미엄 | 프리미엄 v2 | 격리
API Management의 API 및 작업은 응답 캐싱을 사용하여 구성할 수 있습니다. 응답 캐싱은 API 호출자의 대기 시간과 API 공급자의 백 엔드 부하를 크게 줄일 수 있습니다. 이 문서에서는 API에 캐싱을 추가하는 방법을 설명합니다.
중요합니다
기본 제공 캐시는 휘발성이며 동일한 API Management 인스턴스의 동일한 지역에 있는 모든 단위에서 공유됩니다. 사용된 캐시 유형(내부 또는 외부)에 관계없이 캐시 관련 작업이 캐시의 변동성으로 인해 캐시에 연결되지 않거나 다른 이유로 인해 캐시에 연결되지 않는 경우 캐시 관련 작업을 사용하는 API 호출에서 오류가 발생하지 않고 캐시 작업이 성공적으로 완료됩니다. 읽기 작업의 경우 호출 정책 식에 null 값이 반환됩니다. 정책 코드는 캐시에서 찾을 수 없는 데이터를 검색하는 대체 메커니즘이 있는지 확인하도록 설계되어야 합니다.
캐싱에 대한 자세한 내용은 API Management 캐싱 정책과 Azure API Management의 사용자 지정 캐싱을 참조하세요.
이 문서에서는 다음을 수행합니다.
- API에 대한 응답 캐싱 추가
- 캐싱이 작동하는지 확인
참고 항목
내부 캐싱은 Azure API Management의 소비 계층에서 사용할 수 없습니다. 그 대신 외부 Azure Cache for Redis를 사용할 수 있습니다. 다른 API Management 서비스 계층에서 외부 캐시를 구성할 수도 있습니다.
필수 조건
캐싱 정책 추가
이 예제에 표시된 캐싱 정책을 사용하여 테스트 작업에 대한 첫 번째 요청은 백 엔드 서비스의 응답을 반환합니다. 이 응답은 지정된 헤더 및 쿼리 문자열 매개 변수를 통해 캐시 및 입력됩니다. 일치하는 매개 변수를 사용하여 작업에 대한 후속 호출은 캐시 기간 간격이 만료될 때까지 캐시된 응답을 반환합니다.
Azure Portal에 로그인합니다.
API Management 인스턴스로 이동합니다.
왼쪽 메뉴에서 API>API 를 선택합니다.
캐싱을 구성할 API를 선택합니다.
화면 위쪽에서 디자인 탭을 선택합니다.
인바운드 처리 섹션에서 /< 아이콘을> 선택합니다.
요소에서
inbound
다음 정책을 추가합니다.<cache-lookup vary-by-developer="false" vary-by-developer-groups="false"> <vary-by-header>Accept</vary-by-header> <vary-by-header>Accept-Charset</vary-by-header> <vary-by-header>Authorization</vary-by-header> </cache-lookup>
요소에서
outbound
다음 정책을 추가합니다.<cache-store duration="20" />
이 정책
duration
에서 캐시된 응답의 만료 간격을 지정합니다. 간격은 20초입니다.저장을 선택합니다.
팁
Azure API Management에서 외부 Azure Cache for Redis 사용에 설명된 대로 외부 캐시를 사용하는 경우 캐싱 정책의 특성을 지정할 caching-type
수 있습니다. 자세한 내용은 API Management 캐싱 정책을 참조하세요.
작업을 호출하여 캐싱 테스트
캐싱을 테스트하려면 포털에서 작업을 호출합니다.
- Azure Portal에서 API Management 인스턴스로 이동합니다.
- 왼쪽 메뉴에서 API>API 를 선택합니다.
- 캐싱 정책을 추가할 API를 선택합니다.
- 테스트할 작업을 선택합니다.
- 창 맨 위에 있는 테스트 탭을 선택합니다.
- 빠른 연속으로 추적을 2~3번 선택합니다.
- HTTP 응답에서 추적 탭을 선택합니다.
- 인바운드 섹션으로 다음 스크린샷과 유사한 메시지가 표시됩니다. 이는 캐시 적중을 나타냅니다.
관련 콘텐츠
- 캐싱 정책에 대한 자세한 내용은 API Management 정책 참조의 캐싱 정책을 참조하세요.
- 정책 식을 사용하여 키로 항목을 캐싱하는 방법에 대한 자세한 내용은 Azure API Management의 사용자 지정 캐싱을 참조하세요.
- 외부 Azure Cache for Redis 또는 Azure Managed Redis를 사용하는 방법에 대한 자세한 내용은 Azure API Management에서 외부 Azure Cache for Redis 사용을 참조 하세요.