Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Önbelleğe alınmış değerlerin çalışma zamanında nasıl alınacağını yapılandırır.
Bu politika, genel amaçlı kısa süreli önbelleğe alma işlemlerinde kullanılmak üzere tasarlanmıştır. Bu politika, Önbelleği Doldurma Politikası (girişleri yazmak için) ve Önbelleği Geçersiz Kılma Politikası (girişleri geçersiz kılmak için) ile birlikte kullanılır.
Arka uç kaynaklarının yanıtlarını önbelleğe alma hakkında bilgi edinmek için Response Cache politikasına bakın.
Öğe referansı
Bu politikada yapılandırabileceğiniz öğeler aşağıda listelenmiştir.
<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>Varsayılan olarak paylaşılan bir önbellek bulunur. Paylaşılan önbelleği kullanmak için bu politika yapılandırmasında <CacheResource> öğesini atlayın.
Temel alınan veri deposu hakkında daha fazla bilgi için Önbellek iç işleyişi başlıklı makaleyi inceleyin. Önbellekleri yapılandırma hakkında daha fazla bilgi için Ortam önbelleği oluşturma ve düzenleme başlıklı makaleyi inceleyin.
<LookupCache> özellikleri
Aşağıdaki tabloda tüm politika üst öğelerinde ortak olan özellikler açıklanmaktadır:
| Özellik | Açıklama | Varsayılan | Varlık |
|---|---|---|---|
name |
Politikanın dahili adı. İsteğe bağlı olarak, politikayı |
Yok | Zorunlu |
continueOnError |
Bir politika başarısız olduğunda hata döndürmesi için Akış yürütmenin bir politikadan sonra bile devam etmesi için |
false | İsteğe bağlı |
enabled |
Politikayı uygulamak için Politikayı devre dışı bırakmak için |
true | İsteğe bağlı |
async |
Bu özelliğin desteği sonlandırıldı. |
false | Kullanımdan kaldırıldı |
<DisplayName> öğe
Politikayı name özelliğine ek olarak
farklı bir doğal dil adına sahip yönetim arayüzü proxy düzenleyicisi.
<DisplayName>Policy Display Name</DisplayName>
| Varsayılan |
Yok Bu öğeyi çıkarırsanız politikanın |
|---|---|
| Varlık | İsteğe bağlı |
| Tür | Dize |
<AssignTo> öğesi
Önbellek girişi, önbellekten alındıktan sonra atanacağı değişkeni belirtir. Değişken yazılabilir olmalıdır. Önbellek aramasında bir değer alınmazsa değişken ayarlanmaz.
<AssignTo>variable_to_receive_cached_value</AssignTo>
|
Varsayılan: |
Yok |
|
Mevcut olma: |
Zorunlu |
|
Tür: |
Dize |
<CacheKey> öğesi
Önbellekte depolanan bir veri parçasına benzersiz bir işaretçi yapılandırır.
<CacheKey> <Prefix>string</Prefix> <KeyFragment ref="variable_name" /> <KeyFragment>literal_string</KeyFragment> </CacheKey>
|
Varsayılan: |
Yok |
|
Mevcut olma: |
Zorunlu |
|
Tür: |
Yok |
<CacheKey>, önbellekte depolanan her veri parçasının adını oluşturur.
Çalışma zamanında, <KeyFragment> değerlerinin başına <Scope> öğe değeri veya <Prefix> değeri eklenir. Örneğin, aşağıdakiler UserToken__apiAccessToken__<value_of_client_id> önbellek anahtarıyla sonuçlanır:
<CacheKey>
<Prefix>UserToken</Prefix>
<KeyFragment>apiAccessToken</KeyFragment>
<KeyFragment ref="request.queryparam.client_id" />
</CacheKey><CacheKey> öğesini <Prefix> ve <Scope> ile birlikte kullanırsınız. Daha fazla bilgi için Önbellek anahtarlarıyla çalışma başlıklı makaleyi inceleyin.
<CacheLookupTimeoutInSeconds> öğesi
Başarısız bir önbellek aramasının önbellekte yok olarak kabul edileceği süreyi saniye cinsinden belirtir. Bu durumda akış, önbellekte yok yolu boyunca devam eder.
<CacheLookupTimeoutInSeconds>30</CacheLookupTimeoutInSeconds>
|
Varsayılan: |
30 |
|
Mevcut olma: |
İsteğe bağlı |
|
Tür: |
Tamsayı |
<CacheResource> öğesi
İletilerin depolanması gereken önbelleği belirtir.
Bu politika (ve ilgili PopulateCache ve InvalidateCache politikalarınız) paylaşılan önbelleği kullanıyorsa bu öğeyi tamamen atlayın.
<CacheResource>cache_to_use</CacheResource>
|
Varsayılan: |
Yok |
|
Mevcut olma: |
İsteğe bağlı |
|
Tür: |
Dize |
Önbellekleri yapılandırma hakkında daha fazla bilgi için Ortam önbelleği oluşturma ve düzenleme başlıklı makaleyi inceleyin.
<CacheKey>/<KeyFragment> öğesi
Önbelleğe alınmış yanıtlara isteklerin eşleştirilmesi için bir ad alanı oluşturarak önbellek anahtarına dahil edilmesi gereken bir değeri belirtir.
<KeyFragment ref="variable_name"/> <KeyFragment>literal_string</KeyFragment>
|
Varsayılan: |
Yok |
|
Mevcut olma: |
İsteğe bağlı |
|
Tür: |
Yok |
Bu, bir anahtar (sizin sağladığınız statik bir ad) veya bir değer (bir değişkene referans verilerek ayarlanan dinamik bir giriş) olabilir. Belirtilen tüm parçalar (ön ekle birlikte) birleştirilerek önbellek anahtarı oluşturulur.
<KeyFragment>apiAccessToken</KeyFragment> <KeyFragment ref="request.queryparam.client_id" />
<KeyFragment> öğesini <Prefix> ve <Scope> ile birlikte kullanırsınız. Daha fazla bilgi için Önbellek anahtarlarıyla çalışma başlıklı makaleyi inceleyin.
Özellikler
| Özellik | Tür | Varsayılan | Zorunlu | Açıklama |
|---|---|---|---|---|
| ref | dize | Hayır |
Değerin alınacağı değişken. Bu öğe değişmez bir değer içeriyorsa kullanılmamalıdır. |
<CacheKey>/<Prefix> öğesi
Önbellek anahtarı öneki olarak kullanılacak bir değeri belirtir.
<Prefix>prefix_string</Prefix>
|
Varsayılan: |
Yok |
|
Mevcut olma: |
İsteğe bağlı |
|
Tür: |
Dize |
<Scope> ile numaralandırılmış bir değer yerine kendi değerinizi belirtmek istediğinizde <Scope> yerine bu değeri kullanın. Tanımlanmışsa,
<Prefix>, önbelleğe yazılan girişler için önbellek anahtarı değerinin başına eklenir. <Prefix> öğe değeri, <Scope> öğe değerini geçersiz kılar.
<Prefix> öğesini <CacheKey> ve <Scope> ile birlikte kullanırsınız. Daha fazla bilgi için Önbellek anahtarlarıyla çalışma başlıklı makaleyi inceleyin.
<Scope> öğesi
<CacheKey> öğesinde <Prefix> öğesi sağlanmadığında önbellek anahtarı için bir önek oluşturmak üzere kullanılan numaralandırma.
<Scope>scope_enumeration</Scope>
|
Varsayılan: |
"Özel" |
|
Mevcut olma: |
İsteğe bağlı |
|
Tür: |
Dize |
<Scope> ayarı, <Scope> değerine göre önüne eklenen bir önbellek anahtarı belirler. Örneğin, kapsam Exclusive olarak ayarlandığında bir önbellek anahtarı şu biçimi alır:
orgName__envName__applicationName__proxy|TargetName__
[ serializedCacheKey ].
<CacheKey> içinde bir <Prefix> öğesi varsa bu öğe, <Scope> öğesi değerinin yerine geçer. Geçerli değerler aşağıdaki numaralandırmaları içerir.
<Scope> öğesini <CacheKey> ve <Prefix> ile birlikte kullanırsınız. Daha fazla bilgi için Önbellek anahtarlarıyla çalışma başlıklı makaleyi inceleyin.
Kabul edilebilir değerler
Global |
Önbellek anahtarı, ortamda dağıtılan tüm API proxy'leri arasında paylaşılır. Önbellek anahtarı, orgName __ envName __ biçiminde eklenir.
|
Application |
API proxy adı, önek olarak kullanılır. Önbellek anahtarı, orgName__envName__applicationName biçiminde önceden eklenir. |
Proxy |
ProxyEndpoint yapılandırması, önek olarak kullanılır. Önbellek anahtarı, orgName__envName__applicationName__proxyEndpointName biçiminde önceden eklenir. . |
Target |
TargetEndpoint yapılandırması, önek olarak kullanılır. Önüne aşağıdaki biçimde önbellek anahtarı eklenir: orgName__envName__applicationName__targetEndpointName . |
Exclusive |
Varsayılan. Bu, en belirgin olanıdır ve bu nedenle belirli bir önbellekte ad alanı çakışması riskini en aza indirir. Önek iki biçimden birinde olabilir:
Önbellek anahtarı, şu biçimde eklenir: orgName__envName__applicationName__proxyNameITargetName Örneğin, tam dize şu şekilde görünebilir: apifactory__test__weatherapi__16__default__apiAccessToken |
Kullanım notları
Bu politikayı genel amaçlı önbelleğe alma için kullanın. LookupCache politikası, çalışma zamanında önbellekten bir değer alır ve değeri AssignTo öğesiyle belirttiğiniz değişkene atar (değer alınmazsa değişken ayarlanmaz). CacheKey ve Scope öğelerini birleştiren yapılandırma aracılığıyla oluşturulan bir önbellek anahtarına göre değeri arar. Diğer bir deyişle, bir PopulateCache politikası tarafından önbelleğe eklenen belirli bir değeri almak için LookupCache politikanızda önbellek anahtarıyla ilgili öğeler, PopulateCache politikasıyla aynı şekilde yapılandırılmalıdır.
PopulateCache politikası, LookupCache politikası ve InvalidateCache politikası ile genel amaçlı önbelleğe alma, yapılandırdığınız bir önbelleği veya varsayılan olarak dahil edilen paylaşılan bir önbelleği kullanır. Çoğu durumda, temel alınan paylaşılan önbellek ihtiyaçlarınızı karşılar. Varsayılan önbelleği kullanmak için <CacheResource> öğesini atlamanız yeterlidir.
Önbellekleri yapılandırma hakkında daha fazla bilgi için Ortam önbelleği oluşturma ve düzenleme başlıklı makaleyi inceleyin. Temel alınan veri deposu hakkında daha fazla bilgi için Önbellek iç işleyişi başlıklı makaleyi inceleyin.
Akış değişkenleri
Akış değişkenleri, politikalar ve akışlar için HTTP üstbilgilerine, ileti içeriğine veya akışta bulunan bağlama göre dinamik çalışma zamanı davranışı yapılandırmak için kullanılabilir. Akış değişkenleri hakkında daha fazla bilgi için Değişkenler referansı başlıklı makaleyi inceleyin.
Aşağıdaki önceden tanımlanmış akış değişkenleri, LookupCache politikasında tanımladığınız önbelleğin davranışını özelleştirdikten sonra kullanılabilir.
| Değişkenler | Tür | İzin | Açıklama |
|---|---|---|---|
| lookupcache.{policy-name}.cachename | Dize | Salt Okunur | Politikada kullanılan önbellek adını döndürür. |
| lookupcache.{policy-name}.cachekey | Dize | Salt Okunur | Kullanılan anahtarı döndürür. |
| lookupcache.{policy-name}.cachehit | Boole | Salt Okunur | Politika, belirtilen önbellek anahtarı için bir değer bulursa doğru (True) değerini döndürür. |
| lookupcache.{policy-name}.assignto | Dize | Salt Okunur | Önbelleğin atandığı değişkeni döndürür. |
Hata kodları
Bu bölümde, bu politika bir hatayı tetiklediğinde ayarlanan hata mesajları ve akış değişkenleri açıklanmaktadır. Bu bilgiler, bir proxy için hata kuralları geliştirip geliştirmediğinizi bilmeniz önemlidir. Daha fazla bilgi için Politika hataları hakkında bilmeniz gerekenler ve Hataları işleme bölümlerine bakın.
Hata kodu öneki
Yok
Çalışma zamanı hataları
Bu politika, çalışma zamanı hatası bildirmez.
Dağıtım hataları
Bu hatalar, bu politikayı içeren bir proxy dağıttığınızda ortaya çıkabilir.
| Hata adı | Neden | Düzelt |
|---|---|---|
InvalidCacheResourceReference |
Bu hata, <CacheResource> öğesi API proxy'sinin dağıtıldığı ortamda bulunmayan bir ada ayarlanırsa ortaya çıkar. |
build |
InvalidTimeout |
<CacheLookupTimeoutInSeconds> öğesi negatif bir sayıya ayarlanırsa API proxy'sinin dağıtımı başarısız olur. |
build |
CacheNotFound |
Bu hata, hata mesajında bahsedilen belirli önbellek belirli bir Mesaj İşleyici bileşeninde oluşturulmamışsa ortaya çıkar. | build |
Hata değişkenleri
Yok
Örnek hata yanıtı
Yok