Pamięć wewnętrzna

Wyświetlasz dokumentację Apigee Edge.
Przejdź do dokumentacji Apigee X.
info

Ten artykuł opisuje działanie pamięci podręcznej w ramach zasad, takich jak zasada PopulateCache, zasada LookupCache, zasada InvalidateCache, i zasada ResponseCache.

Pamięci podręczne współdzielone i środowiskowe

Każda skonfigurowana zasada buforowania może korzystać z jednego z 2 typów pamięci podręcznej: wbudowanej pamięci podręcznej współdzielonej , do której mają dostęp Twoje aplikacje, oraz co najmniej 1 pamięci podręcznej o zakresie środowiska, którą utworzysz.

  • Pamięć podręczna współdzielona: domyślnie Twoje serwery proxy mają dostęp do 1 pamięci podręcznej współdzielonej w każdym środowisku. Pamięć podręczna współdzielona sprawdza się w podstawowych przypadkach użycia.

    Możesz pracować z pamięcią podręczną współdzieloną tylko za pomocą zasad buforowania, a nie interfejsu Management API. Aby zasada buforowania korzystała z pamięci podręcznej współdzielonej, po prostu pomiń element <CacheResource> zasady.

  • Pamięć podręczna środowiska: jeśli chcesz skonfigurować właściwości pamięci podręcznej z wybranymi wartościami, możesz utworzyć pamięć podręczną o zakresie środowiska. Więcej informacji o tworzeniu pamięci podręcznej znajdziesz w artykule Tworzenie i edytowanie pamięci podręcznej środowiska.

    Podczas tworzenia pamięci podręcznej środowiska konfigurujesz jej właściwości domyślne. Aby zasada buforowania korzystała z pamięci podręcznej środowiska, określ nazwę pamięci podręcznej w elemencie <CacheResource> zasady.

Szyfrowanie pamięci podręcznej

Edge for Public Cloud: pamięć podręczna jest szyfrowana tylko w organizacjach, w których włączono zgodność z PCI- i HIPAA. Szyfrowanie w tych organizacjach jest konfigurowane podczas tworzenia organizacji organizacji.

Poziomy pamięci podręcznej w pamięci i trwałej

Zarówno pamięć podręczna współdzielona, jak i pamięć podręczna środowiska są oparte na systemie dwupoziomowym, który składa się z poziomu w pamięci i poziomu trwałego. Zasady współdziałają z oboma poziomami jako połączoną strukturą. Edge zarządza relacją między poziomami.

  • Poziom 1 to pamięć podręczna w pamięci (L1) zapewniająca szybki dostęp. Każdy węzeł przetwarzania wiadomości (MP) ma własną pamięć podręczną w pamięci (zaimplementowaną na podstawie Ehcache), która zapewnia najszybszą odpowiedź na żądania.
    • W każdym węźle określony procent pamięci jest zarezerwowany na potrzeby pamięci podręcznej.
    • Gdy zostanie osiągnięty limit pamięci, Apigee Edge usuwa wpisy z pamięci podręcznej (choć nadal są one przechowywane w trwałej pamięci podręcznej L2), aby zapewnić dostępność pamięci dla innych procesów.
    • Wpisy są usuwane w kolejności od najstarszego do najnowszego dostępu.
    • Te pamięci podręczne są też ograniczone liczbą wpisów w pamięci podręcznej.
  • Poziom 2 to trwała pamięć podręczna (L2) znajdująca się pod pamięcią podręczną w pamięci. Wszystkie węzły przetwarzania wiadomości współdzielą magazyn danych pamięci podręcznej (Cassandra) na potrzeby utrwalania wpisów w pamięci podręcznej.
    • Wpisy w pamięci podręcznej są tu przechowywane nawet po usunięciu ich z pamięci podręcznej L1, np. po osiągnięciu limitów pamięci.
    • Ponieważ trwała pamięć podręczna jest współdzielona przez procesory wiadomości (nawet w różnych regionach), wpisy w pamięci podręcznej są dostępne niezależnie od tego, który węzeł otrzyma żądanie danych z pamięci podręcznej.
    • W pamięci podręcznej można przechowywać tylko wpisy o określonym rozmiarze, a także obowiązują inne limity pamięci podręcznej. Zobacz Zarządzanie limitami pamięci podręcznej.

Może Cię też zainteresować szczegółowy opis buforowania w Apigee Edge, w społeczności Apigee.

Jak zasady korzystają z pamięci podręcznej

Poniżej opisujemy, jak Apigee Edge obsługuje wpisy w pamięci podręcznej, gdy działają zasady buforowania.

  • Gdy zasada zapisuje nowy wpis w pamięci podręcznej (zasada PopulateCache lub ResponseCache):
    1. Edge zapisuje wpis w pamięci podręcznej L1 w pamięci tylko w procesorze wiadomości który obsłużył żądanie. Jeśli limity pamięci w procesorze wiadomości zostaną osiągnięte przed wygaśnięciem wpisu, Edge usunie wpis z pamięci podręcznej L1.
    2. Edge zapisuje też wpis w pamięci podręcznej L2.
  • Gdy zasada odczytuje z pamięci podręcznej (zasada LookupCache lub ResponseCache):
    1. Edge najpierw szuka wpisu w pamięci podręcznej L1 w pamięci procesora wiadomości obsługującego żądanie.
    2. Jeśli nie ma odpowiedniego wpisu w pamięci, Edge szuka wpisu w trwałej pamięci podręcznej L2.
    3. Jeśli wpis nie znajduje się w trwałej pamięci podręcznej:
      • Zasada LookupCache: z pamięci podręcznej nie jest pobierana żadna wartość.
      • Zasada ResponseCache: Edge zwraca klientowi rzeczywistą odpowiedź z miejsca docelowego i przechowuje wpis w pamięci podręcznej do momentu jego wygaśnięcia lub unieważnienia.
  • Gdy zasada aktualizuje lub unieważnia istniejący wpis w pamięci podręcznej (zasada InvalidateCache, PopulateCache lub ResponseCache):
    1. Procesor wiadomości, który otrzymał żądanie, wysyła transmisję, aby zaktualizować lub usunąć wpis w pamięci podręcznej L1 w sobie i wszystkich innych procesorach wiadomości we wszystkich regionach.
      • Jeśli transmisja się powiedzie, każdy odbierający procesor wiadomości zaktualizuje lub usunie wpis w pamięci podręcznej L1.
      • Jeśli transmisja się nie powiedzie, unieważniona wartość pamięci podręcznej pozostanie w pamięci podręcznej L1 w procesorach wiadomości, które nie otrzymały transmisji. Te procesory wiadomości będą miały nieaktualne dane w pamięci podręcznej L1 do momentu wygaśnięcia czasu życia (TTL) wpisu lub usunięcia go po osiągnięciu limitów pamięci procesora wiadomości.
    2. Transmisja aktualizuje lub usuwa też wpis w pamięci podręcznej L2.

Zarządzanie limitami pamięci podręcznej

Za pomocą konfiguracji możesz zarządzać niektórymi aspektami pamięci podręcznej. Ogólna ilość miejsca dostępnego na pamięć podręczną w pamięci jest ograniczona zasobami systemowymi i nie można jej skonfigurować. W przypadku pamięci podręcznej obowiązują te ograniczenia:

  • Limity pamięci podręcznej: Obowiązują różne limity pamięci podręcznej takie jak rozmiar nazwy i wartości, łączna liczba pamięci podręcznych, liczba elementów w pamięci podręcznej i wygaśnięcie.
  • Pamięć podręczna w pamięci (L1). Limitów pamięci podręcznej nie można skonfigurować. Limity są ustawiane przez Apigee dla każdego procesora wiadomości, który hostuje pamięci podręczne dla wielu klientów.

    W hostowanym środowisku chmury, w którym pamięci podręczne w pamięci dla wszystkich wdrożeń klientów są hostowane na wielu współdzielonych procesorach wiadomości, każdy procesor ma próg procentowy pamięci, który można skonfigurować w Apigee, aby zapewnić, że buforowanie nie zużywa całej pamięci aplikacji. pamięci. Gdy w przypadku danego procesora wiadomości zostanie przekroczony próg, wpisy w pamięci podręcznej są usuwane z pamięci na podstawie najrzadziej używanych. Wpisy usunięte z pamięci pozostają w pamięci podręcznej L2 do momentu wygaśnięcia lub unieważnienia.

  • Trwała pamięć podręczna (L2). Wpisy usunięte z pamięci podręcznej w pamięci pozostają w trwałej pamięci podręcznej zgodnie z konfigurowalnymi ustawieniami czasu życia.

Konfigurowalne optymalizacje

W tabeli poniżej znajdziesz listę ustawień, których możesz użyć do optymalizacji wydajności pamięci podręcznej. Wartości tych ustawień możesz określić podczas tworzenia nowej pamięci podręcznej środowiska, jak opisano w artykule Tworzenie i edytowanie pamięci podręcznej środowiska.

Ustawienie Opis Uwagi
Wygaśnięcie Określa czas życia danych (TTL) wpisów w pamięci podręcznej. Brak.