Phản mẫu: Lưu trữ dữ liệu có kích thước lớn hơn 256 KB trong bộ nhớ đệm

Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến tài liệu về Apigee X.
thông tin

Apigee Edge cung cấp khả năng lưu trữ dữ liệu trong bộ nhớ đệm trong thời gian chạy để duy trì và truy xuất nhanh hơn.

  • Ban đầu, dữ liệu được lưu trữ trong bộ nhớ đệm trong bộ nhớ của Bộ xử lý thông báo, gọi là bộ nhớ đệm L1.
  • Bộ nhớ đệm L1 bị giới hạn bởi dung lượng bộ nhớ dành riêng cho bộ nhớ đệm đó dưới dạng phần trăm bộ nhớ của JVM.
  • Sau đó, các mục nhập vào bộ nhớ đệm sẽ được duy trì trong bộ nhớ đệm L2. Tất cả Bộ xử lý thông báo đều có thể truy cập vào bộ nhớ đệm này. Bạn có thể xem thêm thông tin chi tiết trong phần dưới đây.
  • Bộ nhớ đệm L2 không có giới hạn cố định về số mục nhập vào bộ nhớ đệm. Tuy nhiên, kích thước tối đa của mục có thể lưu vào bộ nhớ đệm được giới hạn ở mức 256 KB. Bạn nên dùng bộ nhớ đệm 256 KB để có hiệu suất tối ưu.

Phản mẫu

Phản mẫu cụ thể này đề cập đến hệ quả của việc vượt quá các hạn chế hiện tại về kích thước bộ nhớ đệm trong nền tảng Apigee Edge.

Khi dữ liệu được lưu vào bộ nhớ đệm lớn hơn 256 KB sẽ dẫn đến những hệ quả như sau:

  • Những yêu cầu API được thực thi lần đầu tiên trên mỗi Bộ xử lý thông báo cần lấy dữ liệu độc lập với nguồn ban đầu (chính sách hoặc máy chủ mục tiêu), vì các mục nhập > 256 KB không có trong bộ nhớ đệm L2.
  • Việc lưu trữ dữ liệu có kích thước lớn hơn (> 256 KB) trong bộ nhớ đệm L1 có xu hướng gây nhiều áp lực cho các tài nguyên của nền tảng. Điều này dẫn đến việc bộ nhớ đệm L1 bị đầy nhanh hơn và do đó có ít dung lượng hơn cho các dữ liệu khác. Hệ quả là một người sẽ không thể lưu dữ liệu vào bộ nhớ đệm nhiều lần như mong muốn.
  • Các mục nhập vào bộ nhớ đệm của Bộ xử lý thư sẽ bị xoá khi đạt đến giới hạn về số lượng mục nhập. Thao tác này khiến dữ liệu được tìm nạp lại từ nguồn ban đầu trên các Bộ xử lý thông báo tương ứng.

Hai sơ đồ luồng.
  Một dành cho kích thước<=256KB cho thấy luồng giữa API Proxy và Bộ xử lý thông báo, cũng như luồng giữa Bộ xử lý thông báo và Bộ nhớ đệm L2 của Bộ nhớ liên tục. Một cho kích thước> 256 KB cho thấy luồng giữa API Proxy và Bộ xử lý thông báo cũng như luồng giữa Bộ xử lý thông báo và Dữ liệu/Phản hồi không được lưu trữ trong Bộ nhớ đệm L2.

Mức độ tác động

  • Dữ liệu có kích thước > 256 KB sẽ không được lưu trong bộ nhớ đệm L2/bộ nhớ đệm lâu dài.
  • Các lệnh gọi thường xuyên hơn đến nguồn ban đầu (chính sách hoặc máy chủ mục tiêu) sẽ làm tăng độ trễ cho các yêu cầu API.

Phương pháp hay nhất

  • Bạn nên lưu trữ dữ liệu có kích thước < 256 KB trong bộ nhớ đệm để đạt hiệu suất tối ưu.
  • Nếu cần lưu trữ dữ liệu trên 256 KB, hãy cân nhắc:
    • Sử dụng bất kỳ cơ sở dữ liệu thích hợp nào để lưu trữ dữ liệu lớn

      HOẶC

    • Nén dữ liệu

Tài liệu đọc thêm