Hướng dẫn về các thao tác QPID

Edge cho Private Cloud phiên bản 4.52.02 tàu với Qpid Broker-J 8.0.6. Trang này mô tả những điểm cần lưu ý về bộ nhớ và ổ đĩa cho thành phần apigee-qpidd của Edge dành cho Đám mây riêng tư (với Trình môi giới dựa trên Java). Các phần dưới đây áp dụng riêng cho trường hợp sử dụng Qpid của Apigee và giải thích cách điều chỉnh Qpid bằng cơ chế cấu hình của Apigee.

Qpid trong Apigee

Trong Apigee, Qpid được sử dụng trong 2 quy trình chính:

  • Số liệu phân tích
  • Kiếm tiền

Trong cả hai quy trình này, Trình xử lý thông báo đều tạo thông báo. Các thông báo này được thu thập theo lô và đẩy vào Qpid. Đối với Analytics, máy chủ Qpid-server sẽ đọc các thông báo. Đối với hoạt động Kiếm tiền, Máy chủ phân loại (một phần của máy chủ quản lý) sẽ đọc các thông báo này. Sau khi đọc, các thông báo theo lô sẽ được huỷ và nhập theo lô.

Các phần sau đây mô tả các cấu hình nên dùng cho bộ nhớ và ổ đĩa có Qpid. Các cấu hình này dựa trên một tin nhắn có kích thước 2KB cho Analytics hoặc Kiếm tiền. Với kích thước lô mặc định là 50, mỗi thư trong Qpid sẽ có kích thước khoảng 100 kb. Apigee cho phép các proxy sửa đổi và thêm thông tin bổ sung vào thông báo (Analytics hoặc Kiếm tiền). Trong các trường hợp nghiêm trọng, điều này có thể thay đổi đáng kể kích thước của một thông báo và toàn bộ thông báo được phân theo lô trong Qpid. Mặc dù các đề xuất chung về bộ nhớ và ổ đĩa trong các phần dưới đây vẫn áp dụng ngay cả trong những trường hợp như vậy, nhưng bạn có thể cần điều chỉnh thêm đối với Qpid để đảm bảo hoạt động trơn tru.

Bộ nhớ

Qpid Broker sử dụng 2 loại bộ nhớ: bộ nhớ ngoài vùng nhớ khối xếp và bộ nhớ vùng nhớ khối xếp. Qpid lưu trữ thông báo trong bộ nhớ ngoài vùng nhớ khối xếp và sử dụng bộ nhớ vùng nhớ khối xếp cho các tác vụ nội bộ riêng, trực tiếp gửi tin nhắn đến hàng đợi và trao đổi, v.v. Trong hầu hết các trường hợp, Apigee khuyên bạn nên giữ tỷ lệ 3:1 giữa bộ nhớ ngoài vùng nhớ khối xếp và bộ nhớ vùng nhớ khối xếp cho Qpid Broker.

Thư trong bộ nhớ ngoài vùng nhớ khối xếp vẫn tồn tại trên đĩa. Ngoài ra, nếu tổng mức sử dụng bộ nhớ ngoài vùng nhớ khối xếp vi phạm một ngưỡng nhất định, Qpid sẽ được định cấu hình để tràn thông báo vào ổ đĩa.

Theo mặc định, Apigee tính toán vùng nhớ khối xếp và bộ nhớ ngoài vùng nhớ khối xếp của Qpid Broker dựa trên bộ nhớ còn trống trên nút. Các tập lệnh của Apigee có giới hạn tạm thời là 4 GB kết hợp cho vùng nhớ khối xếp và bộ nhớ ngoài vùng nhớ khối xếp của Qpid Broker. Nếu muốn ghi đè các giới hạn này, bạn có thể sử dụng hai cấu hình dưới đây để đặt các giá trị của riêng mình cho vùng nhớ khối xếp và bộ nhớ ngoài vùng nhớ khối xếp của Qpid.

  • Cấu hình cho bộ nhớ vùng nhớ khối xếp: bin_run-qpidd_qpid.run.jvm.max_vm_heap=1024m
  • Cấu hình cho bộ nhớ ngoài vùng nhớ khối xếp: bin_run-qpidd_qpid.run.jvm.max_direct_memory_size=3072m

Hãy xem Cách thay đổi cấu hình Qpid để biết thông tin về cách ghi đè cấu hình.

Để biết thêm thông tin, hãy xem phần Tham chiếu Apache Qpid cho bộ nhớ.

Ổ đĩa

Thư mục dữ liệu của Qpid Broker là $APIGEE_ROOT/data/apigee-qpidd. Nhật ký của Qpid Broker được lưu trữ trong $APIGEE_ROOT/var/log/apigee-qpidd.

Hiệu suất của hệ thống tệp lưu trữ thư mục dữ liệu là chìa khoá đối với hiệu suất của toàn bộ Trình môi giới. Để có hiệu suất tốt nhất, hãy chọn một thiết bị có độ trễ thấp và không bị các ứng dụng khác dùng.

Qpid Broker duy trì thông báo trong thư mục dữ liệu. Theo mặc định, Broker sẽ chấp nhận thông báo cho đến khi hệ thống tệp lưu trữ thư mục dữ liệu đầy 80%. Bạn có thể sửa đổi ngưỡng này bằng cách ghi đè cấu hình hiển thị trong ví dụ bên dưới trên mỗi nút Qpid.

bin_run-qpidd_qpid.store.filesystem.maxUsagePercent=60

Trong ví dụ này, Trình môi giới từ chối các tin nhắn mới khi hệ thống tệp cơ bản đã đầy 60%.

Cách thay đổi cấu hình Qpid

Cách thay đổi cấu hình Qpid:

  1. Tạo hoặc chỉnh sửa tệp sau:
    $APIGEE_ROOT/customer/application/qpidd.properties
  2. Thêm hoặc xoá hoặc sửa đổi cấu hình (nếu cần). Ví dụ: để thay đổi bộ nhớ vùng nhớ khối xếp tối đa của Qpid Broker thành 6 GB, hãy thêm cơ chế ghi đè cấu hình sau vào tệp:
    bin_run-qpidd_qpid.run.jvm.max_vm_heap=6144M
  3. Lưu các thay đổi và đảm bảo rằng người dùng apigee sở hữu và có thể đọc được tệp:
    chown apigee:apigee $APIGEE_ROOT/customer/application/qpidd.properties
  4. Khởi động lại quá trình qpidd:
    apigee-service apigee-qpidd khởi động lại