Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Önbelleğe alınan değerlerin önbellekten nasıl temizleneceğini yapılandırır.
Bu politika, genel amaçlı kısa süreli önbelleğe alma işlemlerinde kullanılmak üzere tasarlanmıştır. Önbelleği Doldurma Politikası (giriş yazmak için) ve Önbelleği Arama Politikası (önbellek girişlerini okumak 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.
<InvalidateCache async="false" continueOnError="false" enabled="true" name="policy-name"> <DisplayName>Policy Name</DisplayName> <CacheKey> <Prefix>prefix_string</Prefix> <KeyFragment ref="variable_reference"/> <KeyFragment>fragment_string</KeyFragment> </CacheKey> <!-- Omit this element if you're using the included shared cache. --> <CacheResource>cache_to_use</CacheResource> <Scope>scope_enumeration</Scope> <CacheContext> <APIProxyName>application_that_added_the_entry</APIProxyName> <ProxyName>proxy_for_which_data_was_cached</ProxyName> <TargetName>endpoint_for_which_data_was_cached</TargetName> </CacheContext> <PurgeChildEntries>true_to_purge_all_child_entries</PurgeChildEntries> </InvalidateCache>
<InvalidateCache> ö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 |
<CacheContext>/<APIProxyName> öğesi
Önbellek girişini ekleyen uygulamanın adını belirtir.
<APIProxyName>application_that_added_the_entry</APIProxyName>
Özellikler
| Özellik | Açıklama | Varsayılan | Varlık | Tür |
|---|---|---|---|---|
| ref | Uygulama adını içeren değişken. | Yok | İsteğe bağlı | Dize |
<CacheContext> öğesi
Bir Prefix öğe değeri belirtilmediğinde önbellek anahtarının nasıl oluşturulacağını veya başka bir API proxy'si tarafından eklenen önbellek girişlerinin nasıl temizleneceğini belirtir.
<CacheContext> <APIProxyName ref="variable_name">application_that_added_the_entry</APIProxyName> <TargetName ref="variable_name">endpoint_for_which_data_was_cached</TargetName> <ProxyName ref="variable_name">proxy_for_which_data_was_cached</ProxyName> </CacheContext>
CacheKey'i oluşturmak için kullanılır. Başka bir API proxy'si tarafından eklenen önbellek girişlerini temizlemek için CacheKey öneki (yani özel bir önek) kullanılmadığında APIProxyName, ProxyName ve TargetName değerleri zorunludur.
<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.
<CacheResource> öğesi
İletilerin depolanması gereken önbelleği belirtir.
Bu politika (ve ilgili PopulateCache ve LookupCache 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 | Açıklama | Varsayılan | Varlık | Tür |
|---|---|---|---|---|
| ref | Değerin alınacağı değişken. Bu öğe değişmez değer içeriyorsa kullanılmamalıdır. | Yok | İsteğe bağlı | Dize |
<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.
<CacheContext>/<ProxyName> öğesi
Verilerin önbelleğe alındığı proxy'nin adını belirtir.
<ProxyName>proxy_for_which_data_was_cached</ProxyName>
|
Varsayılan: |
Yok |
|
Mevcut olma: |
İsteğe bağlı |
|
Tür: |
Dize |
Özellikler
| Özellik | Açıklama | Varsayılan | Varlık | Tür |
|---|---|---|---|---|
| ref | Değerin alınacağı değişken. Bu öğe değişmez değer içeriyorsa kullanılmamalıdır. | Yok | İsteğe bağlı | Dize |
<PurgeChildEntries> öğesi
Bu politika için yapılandırılmış bir <KeyFragment> öğesi tarafından ayarlanan değeri paylaşan önbellek girişlerini temizlemek için true. Önbellek anahtarının diğer bölümlerindeki değerler (ör. <Prefix> öğelerindeki değerler) dikkate alınmaz.
<KeyFragment> öğesinin belirtilmesi gerektiğini unutmayın. Bu durum söz konusu değilse <PurgeChildEntries> için true değerinin ayarlanması, önbellekteki tüm girişlerin temizlenmesine neden olabilir.
Aynı anahtar parçası değerine sahip tüm önbellek girişlerini geçersiz kılmak, birden çok ilgili girişi aynı anda temizlemek için yararlı bir yöntem olabilir.
<PurgeChildEntries>true_to_purge_child_entries</PurgeChildEntries>
|
Varsayılan: |
yanlış |
|
Mevcut olma: |
İsteğe bağlı |
|
Tür: |
Boole |
<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ı aşağıdaki biçimi alır:
orgName__envName__applicationName__deployedRevisionNumber__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
| Kapsam Değeri | Açıklama |
|---|---|
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__deployedRevisionNumber__proxyEndpointName biçiminde önceden eklenir. . |
Target |
TargetEndpoint yapılandırması, önek olarak kullanılır. Önbellek anahtarı, şu biçimde eklenir: orgName__envName__applicationName__deployedRevisionNumber__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:
Önüne eklenen önbellek anahtarı şu biçimdedir: orgName__envName__applicationName__deployedRevisionNumber__proxyNameITargetName Örneğin, tam dize şu şekilde görünebilir: apifactory__test__weatherapi__16__default__apiAccessToken |
<CacheContext>/<TargetName> öğesi
Verilerin önbelleğe alındığı hedef uç noktanın adını belirtir.
<TargetName>endpoint_for_which_data_was_cached</TargetName>
|
Varsayılan: |
Yok |
|
Mevcut olma: |
İsteğe bağlı |
|
Tür: |
Dize |
Özellikler
| Özellik | Açıklama | Varsayılan | Varlık | Tür |
|---|---|---|---|---|
| ref | Değerin alınacağı değişken. Bu öğe değişmez değer içeriyorsa kullanılmamalıdır. | Yok | İsteğe bağlı | Dize |
Kullanım notları
PopulateCache politikası, LookupCache politikası ve InvalidCache politikasıyla 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. Bu ö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.
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, InValidateCache politikasındaki <CacheResource> öğesi, API proxy'sinin dağıtıldığı ortamda var olmayan bir ada ayarlanırsa bu hata oluşur. |
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