Định cấu hình kích thước bộ nhớ heap trên Bộ xử lý thông báo

Bạn đang xem tài liệu về Apigee Edge.
Truy cập vào tài liệu Apigee X.
thông tin

Message Processor của Apigee Edge là một thành phần dựa trên Java và sử dụng kích thước bộ nhớ heap mặc định là 512 MB. Tuy nhiên, kích thước bộ nhớ heap mặc định có thể không đủ cho tất cả các trường hợp sử dụng trên Apigee Edge. Bạn có thể cần điều chỉnh kích thước bộ nhớ heap cho Trình xử lý thông báo tuỳ thuộc vào lưu lượng truy cập và yêu cầu xử lý của bạn hoặc để giải quyết mọi vấn đề liên quan đến bộ nhớ.

Kích thước bộ nhớ heap của một ứng dụng Java được kiểm soát thông qua các tham số dòng lệnh Java -Xms (kích thước heap tối thiểu) và -Xmx (kích thước heap tối đa). Trên Trình xử lý thông báo Apigee Edge, các thuộc tính này được kiểm soát thông qua các thuộc tính bin_setenv_min_membin_setenv_max_mem. Bạn có thể đọc thêm về các thuộc tính này trong phần Sửa đổi chế độ cài đặt bộ nhớ Java.

Tài liệu này giải thích cách định cấu hình kích thước bộ nhớ heap trên Trình xử lý thông báo của Apigee Edge.

Trước khi bắt đầu

Thay đổi kích thước bộ nhớ Heap trên Trình xử lý thông báo

Phần này giải thích cách thay đổi kích thước bộ nhớ heap trên Bộ xử lý thông báo. Bạn có thể định cấu hình bộ nhớ tối thiểu và tối đa của vùng nhớ heap thông qua các thuộc tính bin_setenv_min_membin_setenv_max_mem trên thành phần Message Processor.

Để thay đổi kích thước bộ nhớ heap trên Message Processor, hãy thực hiện các bước sau:

  1. Mở tệp /opt/apigee/customer/application/message-processor.properties trên máy Xử lý thông báo trong một trình chỉnh sửa. Nếu tệp chưa tồn tại, hãy tạo tệp đó. Ví dụ:
    vi /opt/apigee/customer/application/message-processor.properties
  2. Thêm các dòng sau vào tệp này:
    bin_setenv_min_mem=minimum_heap_in_megabytes
    bin_setenv_max_mem=maximum_heap_in_megabytes

    Ví dụ: Nếu bạn muốn thay đổi mức tối thiểu và tối đa của vùng nhớ heap trên Trình xử lý thông báo thành lần lượt là 1 GB và 2 GB, hãy thêm các dòng sau vào tệp này:

    bin_setenv_min_mem=1024m
    bin_setenv_max_mem=2048m
  3. Lưu thay đổi.
  4. Đảm bảo rằng tệp thuộc tính này thuộc quyền sở hữu của người dùng apigee. Ví dụ:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
  5. Khởi động lại Trình xử lý tin nhắn bằng lệnh sau:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  6. Nếu bạn có nhiều Trình xử lý thông báo, hãy lặp lại các bước này trên tất cả Trình xử lý thông báo.

Xác minh kích thước bộ nhớ Heap trên Trình xử lý thông báo

Phần này giải thích cách xác minh xem bạn đã sửa đổi thành công các thay đổi về bộ nhớ heap trên Message Processor hay chưa.

Mặc dù đã sử dụng các thuộc tính bin_setenv_min_membin_setenv_max_mem để thay đổi kích thước bộ nhớ heap trên Trình xử lý thông báo, nhưng bạn cần xác minh rằng các tham số dòng lệnh Java thực tế -Xms-Xmx đã được đặt bằng các giá trị mới như sau:

  1. Tìm kiếm để xem các tham số dòng lệnh -Xms-Xmx đã được đặt bằng các giá trị mới cho Trình xử lý thông báo hay chưa bằng cách sử dụng lệnh sau:
    ps -ef | grep message-processor | egrep -o 'Xms[0-9a-z]+|Xmx[0-9a-z]+' | tr '\r' ' '
  2. Nếu bộ nhớ heap tối thiểu và tối đa đã được thay đổi trên Message Processor, thì lệnh trước đó sẽ cho thấy giá trị mới được liệt kê cho -Xms-Xmx.

    Kết quả mẫu từ lệnh trước đó, sau khi bạn thay đổi heap tối thiểu và tối đa trên Message Processor, sẽ như sau:

    Xms1024m
    Xmx2048m

    Trong đầu ra ví dụ, hãy lưu ý rằng các giá trị mới cho heap tối thiểu và tối đa đã được đặt.

  3. Nếu bạn vẫn thấy các giá trị cũ cho -Xms-Xmx, hãy xác minh rằng bạn đã làm theo tất cả các bước được nêu trong phần Thay đổi kích thước bộ nhớ heap trên Trình xử lý thông báo một cách chính xác. Nếu bạn bỏ lỡ bước nào, hãy lặp lại tất cả các bước một cách chính xác.
  4. Nếu bạn vẫn không thể thay đổi bộ nhớ heap, hãy liên hệ với Nhóm hỗ trợ Apigee Edge.

Tiếp theo là gì?