<ph type="x-smartling-placeholder"></ph>
Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur
Apigee X-Dokumentation. Weitere Informationen
Konfiguriert, wie die im Cache gespeicherten Werte aus dem Cache gelöscht werden.
Diese Richtlinie ist für die Anwendung beim allgemeinen, kurzzeitigen Caching vorgesehen. Sie wird in Verbindung mit der Richtlinie zur Cache-Befüllung (für das Schreiben von Einträgen) und der Lookup-Cache-Richtlinie (für das Lesen von Cache-Einträgen) verwendet.
Informationen zum Caching der Antworten von Back-End-Ressourcen finden Sie in der Response-Cache-Richtlinie
Elementverweis
Im Folgenden sind die über diese Richtlinie konfigurierbaren Werte aufgeführt.
<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>-Attribute
In der folgenden Tabelle werden Attribute beschrieben, die für alle übergeordneten Richtlinienelemente gelten:
Attribut | Beschreibung | Standard | Präsenz |
---|---|---|---|
name |
Der interne Name der Richtlinie. Der Wert des Attributs Optional können Sie das Element |
– | Erforderlich |
continueOnError |
Legen Sie Legen Sie |
false | Optional |
enabled |
Setzen Sie den Wert auf Legen Sie |
true | Optional |
async |
Dieses Attribut wurde verworfen. |
false | Veraltet |
<DisplayName>-Element
Wird zusätzlich zum Attribut name
verwendet, um die Richtlinie im Proxy-Editor der Verwaltungs-UI mit einem anderen Namen in einer natürlichen Sprache zu versehen.
<DisplayName>Policy Display Name</DisplayName>
Standardeinstellung |
– Wenn Sie dieses Element weglassen, wird der Wert des Namensattributs |
---|---|
Präsenz | Optional |
Typ | String |
<CacheContext>/<APIProxyName>-Element
Gibt den Namen der Anwendung an, die den Cache-Eintrag hinzugefügt hat.
<APIProxyName>application_that_added_the_entry</APIProxyName>
Attribute
Attribut | Beschreibung | Standard | Präsenz | Typ |
---|---|---|---|---|
ref | Variable mit dem Anwendungsnamen. | – | Optional | String |
<CacheContext>-Element
Gibt an, wie ein Cache-Schlüssel erstellt wird, wenn kein Prefix
-Elementwert angegeben ist, oder um Cache-Einträge zu löschen, die von einem anderen API-Proxy hinzugefügt wurden.
<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>
Wird zum Erstellen des CacheKey verwendet. Werte für APIProxyName, ProxyName und TargetName sind obligatorisch, wenn ein CacheKey-Präfix, also ein benutzerdefiniertes Präfix, nicht verwendet wird, um Cache-Einträge zu löschen, die von einem anderen API-Proxy hinzugefügt wurden.
<CacheKey>-Element
Konfiguriert einen eindeutigen Zeiger auf ein im Cache gespeichertes Datenelement.
<CacheKey> <Prefix>string</Prefix> <KeyFragment ref="variable_name" /> <KeyFragment>literal_string</KeyFragment> </CacheKey>
Standard: |
– |
Präsenz: |
Erforderlich |
Typ: |
– |
<CacheKey>
erstellt den Namen jedes Datenelements, das im Cache gespeichert ist.
Zur Laufzeit werden <KeyFragment>
-Werte entweder dem <Scope>
-Elementwert oder dem <Prefix>
-Wert vorangestellt. Das folgende Beispiel führt zu einem Cacheschlüssel von UserToken__apiAccessToken__
<value_of_client_id>:
<CacheKey> <Prefix>UserToken</Prefix> <KeyFragment>apiAccessToken</KeyFragment> <KeyFragment ref="request.queryparam.client_id" /> </CacheKey>
Sie verwenden das <CacheKey>
-Element zusammen mit <Prefix>
und <Scope>
. Weitere Informationen finden Sie unter Mit Cache-Schlüsseln arbeiten.
<CacheResource>-Element
Gibt den Cache an, in dem Nachrichten gespeichert werden sollen.
Lassen Sie dieses Element vollständig weg, wenn diese Richtlinie (und Ihre entsprechenden PopulateCache- und LookupCache-Richtlinien) den enthaltenen freigegebenen Cache verwenden.
<CacheResource>cache_to_use</CacheResource>
Standardwert: |
– |
Präsenz: |
Optional |
Typ: |
String |
Weitere Informationen zum Konfigurieren von Caches finden Sie unter Umgebungs-Cache erstellen und bearbeiten.
<CacheKey>/<KeyFragment>-Element
Gibt einen Wert an, der im Cache-Schlüssel enthalten sein muss, um einen Namespace für den Abgleich von Anfragen mit im Cache gespeicherten Antworten zu erstellen.
<KeyFragment ref="variable_name"/> <KeyFragment>literal_string</KeyFragment>
Standard: |
– |
Präsenz: |
Optional |
Typ: |
– |
Dabei kann es sich um einen Schlüssel (einen von Ihnen angegebenen statischen Namen) oder um einen Wert (einen dynamischen Eintrag, der durch den Verweis auf eine Variable bestimmt wird) handeln. Alle angegebenen Fragmente werden (plus Präfix) verkettet, um den Cache-Schlüssel zu erstellen.
<KeyFragment>apiAccessToken</KeyFragment> <KeyFragment ref="request.queryparam.client_id" />
Sie verwenden das <KeyFragment>
-Element zusammen mit <Prefix>
und <Scope>
. Weitere Informationen finden Sie unter Mit Cache-Schlüsseln arbeiten.
Attribute
Attribut | Beschreibung | Standard | Präsenz | Typ |
---|---|---|---|---|
Ref | Die Variable, aus der der Wert abgerufen wird. Sollte nicht verwendet werden, wenn dieses Element einen Literalwert enthält. | – | Optional | String |
<CacheKey>/<Prefix>-Element
Gibt den Wert an, der als Cache-Schlüsselpräfix verwendet werden soll.
<Prefix>prefix_string</Prefix>
Standard: |
– |
Präsenz: |
Optional |
Typ: |
String |
Verwenden Sie diesen Wert anstelle von <Scope>
, wenn Sie einen eigenen Wert anstelle eines <Scope>
-Aufzählungswerts angeben möchten. Wenn definiert, definiert <Prefix>
den Cache-Schlüsselwert für Einträge, die in den Cache geschrieben werden. <Prefix>
-Elementwerte überschreiben <Scope>
-Elementwerte.
Sie verwenden das <Prefix>
-Element zusammen mit <CacheKey>
und <Scope>
. Weitere Informationen finden Sie unter Mit Cache-Schlüsseln arbeiten.
<CacheContext>/<ProxyName>-Element
Gibt den Namen des Proxys an, für den die Daten im Cache gespeichert wurden.
<ProxyName>proxy_for_which_data_was_cached</ProxyName>
Standardwert: |
– |
Präsenz: |
Optional |
Typ: |
String |
Attribute
Attribut | Beschreibung | Standard | Präsenz | Typ |
---|---|---|---|---|
Ref | Die Variable, aus der der Wert abgerufen wird. Sollte nicht verwendet werden, wenn dieses Element einen Literalwert enthält. | – | Optional | String |
<PurgeChildEntries>-Element
true
zum Löschen von Cache-Einträgen, die einen von einem für diese Richtlinie konfigurierten <KeyFragment>
-Element bestimmten Wert teilen. Werte in anderen Teilen des Cache-Schlüssels, z. B. in <Prefix>
-Elementen, werden nicht berücksichtigt.
Beachten Sie, dass das <KeyFragment>
-Element angegeben werden muss. Ist dies nicht der Fall, können durch Festlegung von "true" für <PurgeChildEntries>
alle Einträge im Cache gelöscht werden.
Die Entwertung aller Cache-Einträge desselben Schlüsselfragmentwerts kann eine sinnvolle Möglichkeit darstellen, mehrere verwandte Einträge gleichzeitig zu löschen.
<PurgeChildEntries>true_to_purge_child_entries</PurgeChildEntries>
Standardwert: |
false |
Präsenz: |
Optional |
Typ: |
Boolean |
<Scope>-Element
Aufzählung, die zum Erstellen eines Präfixes für einen Cache-Schlüssel verwendet wird, wenn das Element <Prefix>
nicht im Element <CacheKey>
angegeben ist.
<Scope>scope_enumeration</Scope>
Standard: |
"Exklusiv" |
Präsenz: |
Optional |
Typ: |
String |
Mit der Einstellung <Scope>
wird ein Cache-Schlüssel festgelegt, dem gemäß des Werts <Scope>
etwas vorangestellt wird. Ein Cache-Schlüssel hat beispielsweise folgende Form, wenn der Bereich auf Exclusive
eingestellt ist:
orgName__envName__applicationName__deployedRevisionNumber__proxy|TargetName__ [ serializedCacheKey ].
Ist in <CacheKey>
ein <Prefix>
-Element vorhanden, hat dies vor einem <Scope>
-Elementwert Vorrang. Gültige Werte sind folgende Aufzählungen.
Sie verwenden das <Scope>
-Element zusammen mit <CacheKey>
und <Prefix>
. Weitere Informationen finden Sie unter Mit Cache-Schlüsseln arbeiten.
Zulässige Werte
Bereichswert | Beschreibung |
---|---|
Global |
Der Cache-Schlüssel wird für alle API-Proxys freigegeben, die in der Umgebung bereitgestellt werden. Der Cache-Schlüssel wird im Format orgName __ envName vorangestellt. Wenn Sie einen |
Application |
Der API-Proxyname wird als Präfix verwendet. Der Cache-Schlüssel hat das Format orgName__envName__applicationName. |
Proxy |
Die ProxyEndpoint-Konfiguration wird als Präfix verwendet. Dem Cache-Schlüssel wird orgName__envName__applicationName__deployedRevisionNumber__proxyEndpointName vorangestellt. |
Target |
Die TargetEndpoint-Konfiguration wird als Präfix verwendet. Dem Cache-Schlüssel wird orgName__envName__applicationName__deployedRevisionNumber__targetEndpointName vorangestellt. |
Exclusive |
Standard. Dies ist die spezifischste Zuordnung und bedingt daher ein minimales Risiko in Sachen Namespace-Konflikten in einem bestimmten Cache. Das Präfix gibt es in zwei Formen:
Dem Cache-Schlüssel wird orgName__envName__AnwendungName__deployedREvisionNumber__proxyNameITargetName vorangestellt Der vollständige String kann so aussehen: apifactory__test__weatherapi__16__default__apiAccessToken. |
<CacheContext>/<TargetName>-Element
Gibt den Namen des Zielendpunkts an, für den die Daten im Cache gespeichert wurden.
<TargetName>endpoint_for_which_data_was_cached</TargetName>
Standardwert: |
– |
Präsenz: |
Optional |
Typ: |
String |
Attribute
Attribut | Beschreibung | Standard | Präsenz | Typ |
---|---|---|---|---|
Ref | Die Variable, aus der der Wert abgerufen wird. Sollte nicht verwendet werden, wenn dieses Element einen Literalwert enthält. | – | Optional | String |
Verwendungshinweise
Das allgemeine Caching mit der Populate Cache-Richtlinie, der LookupCache-Richtlinie und der InvalidateCache-Richtlinie verwendet entweder einen von Ihnen konfigurierten Cache oder einen freigegebenen Cache, der standardmäßig berücksichtigt wird. In den meisten Fällen sollte der zugrunde liegende freigegebene Cache Ihren Anforderungen genügen. Um diesen Cache zu verwenden, lassen Sie einfach das Element <CacheResource>
weg.
Weitere Informationen zum Konfigurieren von Caches finden Sie unter Umgebungs-Cache erstellen und bearbeiten. Weitere Informationen zum zugrunde liegenden Datenspeicher finden Sie unter Interne Strukturen des Cache.
Fehlercodes
This section describes the error messages and flow variables that are set when this policy triggers an error. This information is important to know if you are developing fault rules for a proxy. To learn more, see What you need to know about policy errors and Handling faults.
Error code prefix
N/A
Runtime errors
This policy does not throw any runtime errors.
Deployment errors
These errors can occur when you deploy a proxy containing this policy.
Error name | Cause | Fix |
---|---|---|
InvalidCacheResourceReference |
This error occurs if the <CacheResource> element in the InvalidateCache policy is set
to a name that does not exist in the environment where the API proxy is being deployed. |
build |
CacheNotFound |
This error occurs if the specific cache mentioned in the error message has not been created on a specific Message Processor component. | build |
Fault variables
N/A
Example error response
N/A