Đị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.
Chuyển đến Tài liệu về Apigee X.
thông tin

Trình xử lý tin nhắn 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ớ vùng nhớ khối xếp mặc định là 512 MB. Tuy nhiên, dung lượng bộ nhớ vùng nhớ khối xếp mặc định có thể không đủ cho mọi trường hợp sử dụng trên Lợi ích của Apigee. Có thể bạn cần tinh chỉnh dung lượng bộ nhớ vùng nhớ khối xếp cho Trình xử lý thư, tuỳ thuộc vào các yêu cầu về lưu lượng truy cập và xử lý hoặc giải quyết mọi vấn đề liên quan đến bộ nhớ.

Kích thước bộ nhớ vùng nhớ khối xếp của ứ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 vùng nhớ khối xếp tối thiểu) và -Xmx (kích thước vùng nhớ khối xếp tối đa). Trên Apigee Edge Message Processors (Trình xử lý thông báo cạnh tranh) – được kiểm soát thông qua các tài sản bin_setenv_min_membin_setenv_max_mem. Bạn có thể đọc thêm về những cơ sở lưu trú này trong 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 dung lượng bộ nhớ vùng nhớ khối xếp trên Bộ xử lý tin nhắn của Apigee Edge.

Trước khi bắt đầu

Thay đổi kích thước bộ nhớ của Vùng nhớ khối xếp trên Bộ xử lý thư

Phần này giải thích cách thay đổi kích thước bộ nhớ vùng nhớ khối xếp trên Trình xử lý thư. Tối thiểu và bộ nhớ vùng nhớ khối xếp tối đa có thể được định cấu hình thông qua các thuộc tính bin_setenv_min_membin_setenv_max_mem trên thành phần Trình xử lý thư.

Để thay đổi kích thước bộ nhớ vùng nhớ khối xếp trên Trình xử lý thư, hãy thực hiện các bước sau:

  1. Mở tệp /opt/apigee/customer/application/message-processor.properties trên Công cụ xử lý thư trong 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 vùng nhớ khối xếp tối thiểu và tối đa trên Trình xử lý thư thành 1 GB và 2 GB, sau đó 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 các thay đổi.
  4. Đảm bảo tệp thuộc tính này thuộc 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ý thư 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ư, hãy lặp lại các bước này trên tất cả các Trình xử lý thư.

Xác minh kích thước bộ nhớ của Vùng nhớ khối xếp trên Bộ xử lý thư

Phần này giải thích cách xác minh xem những thay đổi đối với bộ nhớ vùng nhớ khối xếp đã được sửa đổi thành công hay chưa Trình xử lý thư.

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ớ vùng nhớ khối xếp trên Trình xử lý thông báo, nhưng bạn vẫn cần xác minh rằng 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ó được đặt bằng các giá trị mới cho Trình xử lý thư bằ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ớ vùng nhớ khối xếp tối thiểu và tối đa đã thay đổi trên Trình xử lý thông báo, thì lệnh trước 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 giá trị tối thiểu và tối đa vùng nhớ khối xếp trên Trình xử lý thư như sau:

    Xms1024m
    Xmx2048m
    

    Trong kết quả của ví dụ, lưu ý rằng các giá trị mới cho vùng nhớ khối xếp tối thiểu và tối đa đã được đặt.

  3. Nếu bạn vẫn thấy các giá trị cũ của -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 Thay đổi kích thước bộ nhớ vùng nhớ khối xếp trên Trình xử lý thư đúng cách. Nếu bạn đã bỏ lỡ bất kỳ 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ớ vùng nhớ khối xếp, hãy liên hệ với Bộ phận hỗ trợ Apigee Edge.

Tiếp theo là gì?