Antywzór: przechowywanie w pamięci podręcznej danych większych niż 256 KB

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

Apigee Edge umożliwia przechowywanie danych w pamięci podręcznej w czasie działania, co zapewnia trwałość i szybsze pobieranie.

  • Dane są początkowo przechowywane w pamięci podręcznej w pamięci procesora wiadomości, zwanej L1 pamięcią podręczną.
  • Pamięć podręczna L1 jest ograniczona ilością pamięci zarezerwowanej dla niej jako procent pamięci JVM pamięci.
  • Wpisy w pamięci podręcznej są później utrwalane w pamięci podręcznej L2, która jest dostępna dla wszystkich procesorów wiadomości. Więcej informacji znajdziesz w sekcji poniżej.
  • Pamięć podręczna L2 nie ma limitu liczby wpisów w pamięci podręcznej, ale maksymalny rozmiar wpisu, który można zapisać w pamięci podręcznej, jest ograniczony do 256 KB. Rozmiar pamięci podręcznej 256 KB jest zalecany w celu zapewnienia optymalnej wydajności.

Antywzorzec

Ten antywzorzec opisuje konsekwencje przekroczenia bieżących ograniczeń rozmiaru pamięci podręcznej na platformie Apigee Edge.

Gdy dane > 256 KB są zapisywane w pamięci podręcznej, konsekwencje są następujące:

  • Żądania API wykonywane po raz pierwszy na każdym z procesorów wiadomości muszą pobierać dane niezależnie z pierwotnego źródła (zasady lub serwer docelowy), ponieważ wpisy > 256 KB nie są dostępne w pamięci podręcznej L2.
  • Przechowywanie większych danych (> 256 KB) w pamięci podręcznej L1 powoduje większe obciążenie zasobów platformy. Powoduje to szybsze zapełnianie pamięci podręcznej L1, a tym samym mniejszą ilość miejsca dostępnego na inne dane. W konsekwencji nie będzie można tak agresywnie zapisywać danych w pamięci podręcznej.
  • Wpisy w pamięci podręcznej z procesorów wiadomości zostaną usunięte po osiągnięciu limitu liczby wpisów. Powoduje to ponowne pobieranie danych z pierwotnego źródła na odpowiednich procesorach wiadomości.

Dwa diagramy przepływu.
  Jeden dla rozmiaru<=256 KB, który pokazuje przepływy między serwerem proxy interfejsu API a procesorami wiadomości oraz przepływy między procesorami wiadomości a pamięcią podręczną L2 pamięci trwałej. Jeden dla rozmiaru> 256 KB, który pokazuje przepływy między serwerem proxy interfejsu API a procesorami wiadomości oraz przepływy między procesorami wiadomości a danymi/odpowiedziami, które nie są przechowywane w pamięci podręcznej L2.

Wpływ

  • Dane o rozmiarze > 256 KB nie będą przechowywane w pamięci podręcznej L2 ani w pamięci trwałej.
  • Częstsze wywołania pierwotnego źródła (zasady lub serwer docelowy) powodują zwiększenie opóźnień w przypadku żądań API.

Sprawdzona metoda

  • Aby uzyskać optymalną wydajność, zalecamy przechowywanie w pamięci podręcznej danych o rozmiarze < 256 KB.
  • Jeśli musisz przechowywać dane > 256 KB, rozważ:
    • używanie odpowiedniej bazy danych do przechowywania dużych ilości danych,

      LUB

    • kompresowanie danych.

Więcej informacji