Dela via


Lagra värdet i cacheminnet

GÄLLER FÖR: Alla API Management-nivåer

Utför cache-store-value cachelagring efter nyckel. Nyckeln kan ha ett godtyckligt strängvärde och tillhandahålls vanligtvis med hjälp av ett principuttryck.

Kommentar

Åtgärden att lagra värdet i cacheminnet som utförs av den här principen är asynkron. Det lagrade värdet kan hämtas med hjälp av Hämta värde från cacheprincip . Det lagrade värdet kanske dock inte är omedelbart tillgängligt för hämtning eftersom den asynkrona åtgärd som lagrar värdet i cacheminnet fortfarande pågår.

Viktigt!

Den inbyggda cachen är instabil och delas av alla enheter i samma region i samma API Management-tjänst.

Kommentar

Ange principens element och underordnade element i den ordning som anges i principbeskrivningen. Läs mer om hur du anger eller redigerar API Management-principer.

Principuttryck

<cache-store-value key="cache key value" value="value to cache" duration="seconds" caching-type="prefer-external | external | internal" />

Attribut

Attribut beskrivning Obligatoriskt Standardvärde
cachelagringstyp Välj mellan följande värden för attributet:
- internal för att använda den inbyggda API Management-cachen,
- external för att använda den externa cachen enligt beskrivningen i Använda en extern Azure Cache for Redis i Azure API Management,
- prefer-external för att använda extern cache om det är konfigurerat eller internt cacheminne på annat sätt.

Principuttryck tillåts inte.
Nej prefer-external
varaktighet Värdet cachelagras för det angivna varaktighetsvärdet, som anges i sekunder. Principuttryck tillåts. Ja Ej tillämpligt
nyckel Cachenyckeln som värdet lagras under. Principuttryck tillåts. Ja Ej tillämpligt
värde Värdet som ska cachelagras. Principuttryck tillåts. Ja Ej tillämpligt

Förbrukning

Användningsanteckningar

  • API Management cachelagrar endast svar på HTTP GET-begäranden.
  • Den här principen kan bara användas en gång i ett principavsnitt.
  • Vi rekommenderar att du konfigurerar en princip för hastighetsbegränsning (eller princip för hastighetsgräns per nyckel ) omedelbart efter alla cachesökningar. Detta hjälper till att hindra serverdelstjänsten från att överbelastas om cacheminnet inte är tillgängligt.

Exempel

Det här exemplet visar hur du använder cache-store-value principen för att lagra en användarprofil i cacheminnet. Nyckeln för cacheposten skapas med hjälp av ett principuttryck som kombinerar en sträng med värdet för enduserid kontextvariabeln.

Se ett cache-lookup-value-exempel för att hämta användarprofilen från cacheminnet.

<cache-store-value
    key="@("userprofile-" + context.Variables["enduserid"])"
    value="@((string)context.Variables["userprofile"])" duration="100000" />

Mer information och exempel på den här principen finns i Anpassad cachelagring i Azure API Management.

Mer information om hur du arbetar med principer finns i: