在消息处理器上配置堆内存大小

<ph type="x-smartling-placeholder"></ph> 您正在查看 Apigee Edge 文档。
转到 Apigee X 文档
信息

<ph type="x-smartling-placeholder">

Apigee Edge 的消息处理器是一个基于 Java 的组件,其默认堆内存大小为 512 MB。不过,默认堆内存大小可能不足 Apigee Edge。您可能需要调整消息处理器的堆内存大小,具体取决于 您的流量和处理要求,或解决任何与内存相关的问题。

Java 应用的堆内存大小通过 Java 命令行参数控制 -Xms(最小堆大小)和 -Xmx(最大堆大小)。在 Apigee 上 边缘消息处理器,这些处理器通过 bin_setenv_min_mem 属性进行控制 和 bin_setenv_max_mem。如需详细了解这些属性,请参阅 <ph type="x-smartling-placeholder"></ph> 修改 Java 内存设置

本文档介绍了如何在 Apigee Edge 的消息处理器上配置堆内存大小。

准备工作

更改消息处理器上的堆内存大小

本部分介绍如何更改消息处理器上的堆内存大小。最小值和 可通过 bin_setenv_min_mem 属性配置最大堆内存 以及针对消息处理器组件的 bin_setenv_max_mem

如需更改消息处理器上的堆内存大小,请执行以下步骤:

  1. 在以下设备上打开 /opt/apigee/customer/application/message-processor.properties 文件: 在编辑器中查看消息处理器机器如果该文件尚不存在,请创建一个。 例如:
    vi /opt/apigee/customer/application/message-processor.properties
    
  2. 将以下代码行添加到此文件中:
    bin_setenv_min_mem=minimum_heap_in_megabytes
    bin_setenv_max_mem=maximum_heap_in_megabytes
    

    例如,如果要将消息处理器上的最小和最大堆更改为 分别为 1 GB 和 2 GB,然后将以下行添加到该文件中:

    bin_setenv_min_mem=1024m
    bin_setenv_max_mem=2048m
    
  3. 保存更改。
  4. 请确保此属性文件归 apigee 用户所有。例如:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. 使用以下命令重启消息处理器:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. 如果有多个消息处理器,请在所有消息处理器上重复上述步骤。

验证消息处理器上的堆内存大小

本部分介绍了如何验证堆内存更改是否已被成功修改 对消息处理器的要求

即使您使用属性 bin_setenv_min_membin_setenv_max_mem 更改消息处理器上的堆内存大小,您仍需验证实际的 Java 命令行参数 -Xms-Xmx 是否已使用新值设置,如下所示:

  1. 搜索命令行参数 -Xms-Xmx 是否 并使用以下命令为消息处理器设置新值:
    ps -ef | grep message-processor | egrep -o 'Xms[0-9a-z]+|Xmx[0-9a-z]+' | tr '\r' ' '
    
  2. 如果在消息处理器上更改了堆内存的最小值和最大值,那么 上一个命令会显示为 -Xms-Xmx 列出的新值。

    更改最小值和最大值后,上一个命令的示例结果 堆在消息处理器上的堆如下所示:

    Xms1024m
    Xmx2048m
    

    请注意,在示例输出中,已经设置了最小和最大堆的新值。

  3. 如果您仍然看到 -Xms-Xmx 的旧值,请验证 您已遵循 正确更改消息处理器上的堆内存大小。 如果您遗漏了任何步骤,请再次正确地重复所有步骤。
  4. 如果您仍然无法更改堆内存,请与 Apigee Edge 支持团队联系。

下一步是什么?