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

Edge for Private Cloud phiên bản 4.52.01 đi kèm với Qpid Broker-J 8.0.6. Trang này mô tả những điểm cần cân nhắc 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 nhà môi giới dựa trên Java). Các phần dưới đây dành 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 dùng trong hai quy trình chính:

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

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

Các phần sau đây mô tả các cấu hình được đề xuất cho bộ nhớ và ổ đĩa có Qpid. Các cấu hình này dựa trên một kích thước thông báo duy nhất là 2KB đối với 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ể làm thay đổi đáng kể kích thước của một thông báo riêng lẻ và tổng thể thông báo 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 đúng ngay cả trong những trường hợp như vậy, nhưng bạn có thể cần phải thực hiện thêm một số điều chỉnh đối với Qpid để đảm bảo quá trình vận hành diễn ra suôn sẻ.

Bộ nhớ

Qpid Broker sử dụng hai 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 điệp trong bộ nhớ ngoài vùng nhớ khối xếp và dùng bộ nhớ khối xếp cho các tác vụ nội bộ riêng, thông báo trực tiếp đến hàng đợi và trao đổi, v.v. Trong hầu hết trường hợp, Apigee khuyên bạn nên duy trì tỷ lệ 3:1 giữa bộ nhớ ngoài vùng nhớ khối xếp và vùng nhớ khối xếp cho Qpid Broker.

Các tin nhắn 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, thì Qpid được định cấu hình để tràn thông báo vào ổ đĩa.

Theo mặc định, Apigee sẽ tính toán bộ nhớ khối xếp và bộ 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 mềm là 4 GB cho cả 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 giá trị của riêng mình cho bộ nhớ khối xếp và bộ nhớ ngoài vùng nhớ khối xếp của Qpid.

  • Cấu hình của 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 phần 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 Tài liệu tham khảo Apache Qpid dành 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à yếu tố then chốt đối với hiệu suất của Nhà môi giới nói chung. Để 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 được các ứng dụng khác dùng.

Qpid Broker vẫn giữ thông điệp của mình trong thư mục dữ liệu. Theo mặc định, Nhà môi giới 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 như 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, Nhà môi giới từ chối thông báo 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 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 người dùng apigee có quyền 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:
    Khởi động lại apigee-service apigee-qpidd