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

Przeglądasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
Informacje

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

  • Dane te są początkowo przechowywane w pamięci podręcznej procesora wiadomości, nazywanej pamięcią podręczną L1.
  • Pamięć podręczna L1 jest ograniczona przez ilość zarezerwowanej dla niej pamięci jako odsetek pamięci maszyny JVM.
  • Wpisy z pamięci podręcznej są później zapisywane w pamięci podręcznej L2, do której mają dostęp wszystkie procesory wiadomości. Więcej informacji znajdziesz w sekcji poniżej.
  • Pamięć podręczna L2 nie ma stałego limitu liczby wpisów pamięci podręcznej, ale maksymalny rozmiar wpisu, który można buforować, jest ograniczony do 256 KB. Zalecany rozmiar pamięci podręcznej wynoszący 256 KB, który pozwala uzyskać optymalną wydajność.

Antywzór

Ten konkretny antywzór omawia konsekwencje przekroczenia obecnych ograniczeń rozmiaru pamięci podręcznej na platformie Apigee Edge.

Jeśli dane powyżej 256 KB są przechowywane w pamięci podręcznej, skutki są następujące:

  • Żądania API wykonane po raz pierwszy w każdym z procesorów wiadomości muszą uzyskać dane niezależnie od pierwotnego źródła (zasady lub serwera docelowego), ponieważ wpisy powyżej 256 KB nie są dostępne w pamięci podręcznej L2.
  • Przechowywanie większych danych (> 256 KB) w pamięci podręcznej L1 zwykle bardziej obciąża zasoby platformy. Sprawia to, że pamięć podręczna L1 jest szybciej wypełniana, a tym samym dostępna jest mniejsza ilość miejsca na inne dane. W rezultacie nie będzie można przechowywać danych w pamięci podręcznej z tak agresywną sytuacją, jak by sobie tego życzył.
  • Wpisy z pamięci podręcznej procesorów wiadomości zostaną usunięte po osiągnięciu limitu liczby wpisów. Spowoduje to ponowne pobranie danych z pierwotnego źródła przez odpowiednie procesory 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ływami między procesorami wiadomości i pamięcią podręczną Persistent Storage L2. Jeden dla rozmiaru> 256 KB, który pokazuje przepływy między serwerem proxy interfejsu API a procesorami wiadomości oraz przepływami między tymi procesorami i danymi/odpowiedziami nieprzechowywanymi w pamięci podręcznej L2.

Wpływ

  • Dane o rozmiarze przekraczającym 256 KB nie będą przechowywane w pamięci L2/stałej pamięci podręcznej.
  • Częstsze wywołania pierwotnego źródła (zasady lub serwera docelowego) zwiększają czas oczekiwania na żądania do interfejsu API.

Sprawdzona metoda

  • Zaleca się przechowywanie danych o rozmiarze poniżej 256 KB w pamięci podręcznej w celu uzyskania optymalnej wydajności.
  • Jeśli chcesz przechowywać dane przekraczające 256 KB, weź pod uwagę te zalecenia:
    • Korzystanie z odpowiedniej bazy danych do przechowywania dużych danych

      LUB

    • Kompresowanie danych

Więcej informacji