<ph type="x-smartling-placeholder"></ph>
현재 Apigee Edge 문서를 보고 있습니다.
Apigee X 문서. 정보
런타임 시 캐시된 값을 검색하는 방법을 구성합니다.
이 정책은 범용 단기 캐싱에 사용됩니다. 이는 캐시 채우기 정책(항목 작성용) 및 캐시 무효화 정책(항목 무효화용)과 함께 사용됩니다.
백엔드 리소스의 응답을 캐싱하려면 응답 캐시 정책을 참조하세요.
요소 참조
다음은 이 정책에서 구성할 수 있는 요소입니다.
<LookupCache async="false" continueOnError="false" enabled="true" name="Lookup-Cache-1"> <DisplayName>Lookup Cache 1</DisplayName> <Properties/> <CacheKey> <Prefix/> <KeyFragment ref=""/> </CacheKey> <!-- Omit this element if you're using the included shared cache. --> <CacheResource/> <CacheLookupTimeoutInSeconds/> <Scope>Exclusive</Scope> <AssignTo>flowVar</AssignTo> </LookupCache>
공유 캐시는 기본적으로 포함됩니다. 공유 캐시를 사용하려면 이 정책 구성에서 <CacheResource>
요소를 생략합니다.
기본 데이터 저장소에 대한 자세한 내용은 캐시 내부를 참조하세요. GCP 콘솔 구성과 자세한 내용은 문서 만들기 및 수정 환경 캐시를 참조하세요.
<LookupCache> 속성
다음 표는 모든 정책 상위 요소의 공통 속성에 대해 설명합니다.
속성 | 설명 | 기본값 | 현재 상태 |
---|---|---|---|
name |
정책의 내부 이름입니다. 원하는 경우 |
해당 없음 | 필수 |
continueOnError |
정책이 실패할 경우 오류가 반환되도록 하려면 정책이 실패해도 흐름 실행이 계속되도록 하려면 |
거짓 | 선택사항 |
enabled |
정책을 시행하려면 정책을 중지하려면 |
참 | 선택사항 |
async |
이 속성은 지원이 중단되었습니다. |
거짓 | 지원 중단됨 |
<DisplayName> 요소
name
속성 외에도 이 요소를 사용하여 관리 UI 프록시 편집기의 정책에 다른 자연어 이름으로 라벨을 지정합니다.
<DisplayName>Policy Display Name</DisplayName>
기본값 |
해당 없음 이 요소를 생략하면 정책 |
---|---|
현재 상태 | 선택사항 |
유형 | 문자열 |
<AssignTo> 요소
캐시 항목이 캐시에서 검색된 후에 할당되는 변수를 지정합니다. 변수는 쓰기 가능해야 합니다. 캐시 조회에서 값을 검색하지 않으면 변수가 설정되지 않습니다.
<AssignTo>variable_to_receive_cached_value</AssignTo>
기본값: |
해당 사항 없음 |
Presence: |
필수 |
유형: |
문자열 |
<CacheKey> 요소
캐시에 저장된 데이터 조각을 가리키는 고유한 포인터를 구성합니다.
<CacheKey> <Prefix>string</Prefix> <KeyFragment ref="variable_name" /> <KeyFragment>literal_string</KeyFragment> </CacheKey>
기본값: |
해당 사항 없음 |
Presence: |
필수 |
유형: |
해당 사항 없음 |
<CacheKey>
는 캐시에 저장된 각 데이터 조각의 이름을 구성합니다.
런타임 시 <KeyFragment>
값 앞에 <Scope>
요소 값 또는 <Prefix>
값이 추가됩니다. 예를 들어 다음을 실행하면 캐시 키가 UserToken__apiAccessToken__
<value_of_client_id>가 됩니다.
<CacheKey> <Prefix>UserToken</Prefix> <KeyFragment>apiAccessToken</KeyFragment> <KeyFragment ref="request.queryparam.client_id" /> </CacheKey>
<CacheKey>
요소를 <Prefix>
및 <Scope>
와 함께 사용합니다. 자세한 내용은 캐시 키 작업을 참조하세요.
<CacheLookupTimeoutInSeconds> 요소
캐시 조회가 캐시 부적중으로 간주되는 시간(초)을 지정합니다. 이 경우 흐름이 캐시 부적중 경로를 따라 재개됩니다.
<CacheLookupTimeoutInSeconds>30</CacheLookupTimeoutInSeconds>
기본값: |
30 |
현재 상태: |
선택사항 |
유형: |
정수 |
<CacheResource> 요소
메시지를 저장할 캐시를 지정합니다.
이 정책 및 해당 PopulateCache 및 InvalidateCache 정책이 포함된 공유 캐시를 사용하는 경우 이 요소를 완전히 생략하세요.
<CacheResource>cache_to_use</CacheResource>
기본값: |
해당 사항 없음 |
Presence: |
선택사항 |
유형: |
문자열 |
캐시 구성에 대한 자세한 내용은 환경 만들기 및 수정을 참조하세요. 캐시에 저장합니다.
<CacheKey>/<KeyFragment> 요소
캐시 키에 포함되어야 하는 값을 지정하여 요청을 캐시된 응답과 일치시키기 위한 네임스페이스를 만듭니다.
<KeyFragment ref="variable_name"/> <KeyFragment>literal_string</KeyFragment>
기본값: |
해당 사항 없음 |
Presence: |
선택사항 |
유형: |
해당 없음 |
키(제공하는 정적 이름) 또는 값(변수를 참조하여 설정하는 동적 항목)일 수 있습니다. 지정된 모든 결합 프래그먼트(및 프리픽스 포함)가 연결되어 캐시 키를 만듭니다.
<KeyFragment>apiAccessToken</KeyFragment> <KeyFragment ref="request.queryparam.client_id" />
<KeyFragment>
요소를 <Prefix>
및 <Scope>
와 함께 사용합니다. 자세한 내용은 캐시 키 작업을 참조하세요.
속성
속성 | 유형 | 기본값 | 필수 | 설명 |
---|---|---|---|---|
참조 | 문자열 | 아니요 |
값을 가져올 변수입니다. 이 요소에 리터럴 값이 포함된 경우에는 사용하면 안 됩니다. |
<CacheKey>/<Prefix> 요소
캐시 키 프리픽스로 사용할 값을 지정합니다.
<Prefix>prefix_string</Prefix>
기본값: |
해당 사항 없음 |
Presence: |
선택사항 |
유형: |
문자열 |
<Scope>
- 열거된 값 대신 고유한 값을 지정하려면 <Scope>
대신 이 값을 사용합니다. 정의된 경우 <Prefix>
는 캐시에 작성된 항목의 캐시 키 값을 앞에 추가합니다. <Prefix>
요소 값은 <Scope>
요소 값을 재정의합니다.
<Prefix>
요소를 <CacheKey>
및 <Scope>
와 함께 사용합니다. 자세한 내용은 캐시 키 작업을 참조하세요.
<Scope> 요소
<CacheKey>
요소에서 <Prefix>
요소가 제공되지 않은 경우 캐시 키의 프리픽스를 구성하는 데 사용되는 열거형입니다.
<Scope>scope_enumeration</Scope>
기본값: |
"Exclusive" |
Presence: |
선택사항 |
유형: |
문자열 |
<Scope>
설정은 <Scope>
값에 따라 앞에 오는 캐시 키를 결정합니다. 예를 들어 범위가 Exclusive
로 설정된 경우 캐시 키는 다음 형식을 사용합니다.
orgName__envName__applicationName__deployedRevisionNumber__proxy|TargetName__
[ serializedCacheKey ].
<CacheKey>
에 <Prefix>
요소가 있는 경우 <Scope>
요소 값을 대체합니다. 유효한 값에는 아래의 열거값이 포함됩니다.
<Scope>
요소를 <CacheKey>
및 <Prefix>
와 함께 사용합니다. 자세한 내용은 캐시 키 작업을 참조하세요.
사용 가능한 값
Global |
환경에 배포된 모든 API 프록시에서 캐시 키를 공유합니다. 캐시 키는 orgName__ envName __ 형식으로 앞에 추가됩니다.
|
Application |
API 프록시 이름은 프리픽스로 사용됩니다. 캐시 키는 orgName__envName__applicationName 형식으로 앞에 추가됩니다. |
Proxy |
ProxyEndpoint 구성이 프리픽스로 사용됩니다. 캐시 키는 orgName__envName__applicationName__deployedRevisionNumber__proxyEndpointName 형식으로 앞에 추가됩니다. |
Target |
TargetEndpoint 구성이 프리픽스로 사용됩니다. 캐시 키는 orgName__envName__applicationName__deployedRevisionNumber__targetEndpointName 형식으로 앞에 추가됩니다. |
Exclusive |
기본값입니다. 이는 가장 구체적이므로 지정된 캐시 내에서 네임스페이스 충돌 위험을 최소화합니다. 프리픽스는 다음 두 가지 형식 중 하나입니다.
캐시 키는 orgName__envName__applicationName__deployedRevisionNumber__proxyNameITargetName 형식으로 앞에 추가됩니다. 예를 들어 전체 문자열은 다음과 같습니다. apifactory__test__weatherapi__16__default__apiAccessToken |
사용 참고사항
이 정책은 범용 캐싱에 사용됩니다. 런타임 시 LookupCache 정책은 캐시에서 값을 검색하여 AssignTo 요소로 지정한 변수에 값을 할당합니다(값이 검색되지 않으면 변수가 설정되지 않음). CacheKey 및 Scope 요소를 조합하는 구성을 통해 생성된 캐시 키를 기반으로 값을 찾습니다. 즉, PopulateCache 정책으로 캐시에 추가된 특정 값을 검색하려면 LookupCache 정책에는 PopulateCache 정책과 동일한 방식으로 구성된 캐시 키 관련 요소가 있어야 합니다.
캐시 채우기 정책을 사용한 범용 캐싱
LookupCache 정책 및 InvalidateCache 정책은
사용자가 구성한 캐시 또는 기본적으로 포함된 공유 캐시일 수 있습니다. 대부분의 경우 기본 공유 캐시가 니즈를 충족해야 합니다. 기본 캐시를 사용하려면 다음을 생략하면 됩니다.
<CacheResource>
요소
캐시 구성에 대한 자세한 내용은 환경 만들기 및 수정을 참조하세요. 캐시에 저장합니다. 기본 데이터 스토어에 대한 자세한 내용은 캐시 내부를 참조하세요.
흐름 변수
흐름 변수를 사용하면 HTTP 헤더, 메시지 콘텐츠 또는 흐름에서 사용 가능한 컨텍스트를 기준으로 정책 및 흐름의 동적 런타임 동작을 구성할 수 있습니다. 자세한 내용은 흐름 변수에 관한 내용은 변수 참조
LookupCache 정책에서 정의한 캐시의 동작을 맞춤설정하면 다음 사전 정의된 흐름 변수를 사용할 수 있습니다.
변수 | 유형 | 권한 | 설명 |
---|---|---|---|
lookupcache.{policy-name}.cachename | 문자열 | 읽기 전용 | 정책에 사용된 캐시 이름 반환 |
lookupcache.{policy-name}.cachekey | 문자열 | 읽기 전용 | 사용된 키 반환 |
lookupcache.{policy-name}.cachehit | 부울 | 읽기 전용 | 정책에서 지정된 캐시 키의 값을 찾은 경우 true입니다. |
lookupcache.{policy-name}.assignto | 문자열 | 읽기 전용 | 캐시가 할당된 변수를 반환합니다. |
오류 코드
이 섹션에서는 이 정책이 오류를 트리거할 때 설정되는 오류 메시지 및 흐름 변수에 대해 설명합니다. 이 정보는 프록시에 대한 오류 규칙을 개발하는 중이라면 중요합니다. 자세한 내용은 정책 오류에 대해 알아야 할 사항 및 오류 처리를 참조하세요.
오류 코드 프리픽스
N/A
런타임 오류
이 정책은 런타임 오류를 발생시키지 않습니다.
배포 오류
이 오류는 이 정책이 포함된 프록시를 배포할 때 발생할 수 있습니다.
오류 이름 | 원인 | 수정 |
---|---|---|
InvalidCacheResourceReference |
이 오류는 <CacheResource> 요소의 이름이 API 프록시가 배포되는 환경에 존재하지 않는 이름으로 설정되는 경우에 발생합니다. |
build |
InvalidTimeout |
<CacheLookupTimeoutInSeconds> 요소가 음수로 설정되면 API 프록시 배포가 실패합니다. |
build |
CacheNotFound |
이 오류는 오류 메시지에 언급된 특정 캐시가 특정 메시지 프로세서 구성요소에 생성되지 않은 경우에 발생합니다. | build |
오류 변수
해당 없음
오류 응답 예시
N/A