Antipattern: 256 KB'tan büyük verileri önbellekte depolama

Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin.
bilgi

Apigee Edge, kalıcılık ve daha hızlı alma için verileri çalışma zamanında önbellekte depolama olanağı sunar.

  • Veriler ilk olarak L1 önbelleği olarak adlandırılan Mesaj İşleyici'nin bellek içi önbelleğinde depolanır.
  • L1 önbelleği, JVM belleğinin yüzdesi olarak ayrılan bellek miktarıyla sınırlıdır.
  • Önbelleğe alınan girişler daha sonra tüm ileti işlemcileri tarafından erişilebilen L2 önbelleğinde kalıcı hale getirilir. Daha fazla bilgiyi aşağıdaki bölümde bulabilirsiniz.
  • L2 önbelleğinde önbellek girişlerinin sayısıyla ilgili kesin bir sınır yoktur ancak önbelleğe alınabilecek girişin maksimum boyutu 256 KB ile sınırlıdır. Optimum performans için önerilen önbellek boyutu 256 KB'tır.

Antipattern

Bu antipattern, Apigee Edge platformundaki mevcut önbellek boyutu kısıtlamalarını aşmanın etkilerinden bahseder.

256 KB'tan büyük veriler önbelleğe alındığında sonuçlar aşağıdaki gibi olur:

  • Her Mesaj İşleyici'de ilk kez yürütülen API isteklerinin, verileri orijinal kaynaktan (politika veya hedef sunucu) bağımsız olarak alması gerekir. Çünkü > 256 KB olan girişler L2 önbelleğinde kullanılamaz.
  • L1 önbelleğinde daha büyük verilerin (> 256 KB) depolanması, platform kaynakları üzerinde daha fazla yük oluşturma eğilimindedir. Bu durum, L1 önbellek belleğinin daha hızlı dolmasına ve dolayısıyla diğer veriler için daha az alan kalmasına neden olur. Sonuç olarak, veriler istenildiği kadar agresif bir şekilde önbelleğe alınamaz.
  • Giriş sayısı sınırı aşıldığında, ileti işlemcilerindeki önbelleğe alınmış girişler kaldırılır. Bu durum, verilerin ilgili ileti işlemcilerinde orijinal kaynaktan tekrar getirilmesine neden olur.

İki akış şeması.
  API proxy'si ile ileti işlemcileri arasındaki akışları ve ileti işlemcileri ile kalıcı depolama L2 önbelleği arasındaki akışları gösteren, boyutu 256 KB'tan küçük olanlar. Biri, API proxy'si ile mesaj işlemcileri arasındaki akışları ve mesaj işlemcileri ile L2 önbelleğinde depolanmayan veriler/yanıt arasındaki akışları gösteren >256 KB boyutlu olan.

Etki

  • Boyutu 256 KB'tan büyük olan veriler L2/kalıcı önbellekte depolanmaz.
  • Orijinal kaynağa (bir politika veya hedef sunucu) yapılan daha sık çağrılar, API isteklerinde gecikmelerin artmasına neden olur.

En iyi uygulama

  • Optimum performans elde etmek için boyutu 256 KB'tan küçük olan verilerin önbellekte depolanması tercih edilir.
  • 256 KB'tan büyük verilerin depolanması gerekiyorsa:
    • Büyük verileri depolamak için uygun bir veritabanı kullanma

      VEYA

    • Verileri sıkıştırma

Daha fazla bilgi