8.2. 为大型消息处理配置 AMQP 接收器


以下流程演示了如何配置 AMQP 接受者,以处理大于指定大小的 AMQP 消息作为大消息。

步骤

  1. 打开 <broker-instance-dir>/etc/broker.xml 配置文件。

    代理配置文件中的默认 AMQP 接受器如下:

    <acceptors>
        ...
        <acceptor name="amqp">tcp://0.0.0.0:5672?tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;protocols=AMQP;useEpoll=true;amqpCredits=1000;amqpLowCredits=300</acceptor>
        ...
    </acceptors>
  2. 在默认 AMQP 接受器(或您配置的另一个 AMQP 接受者)中,添加 amqpMinLargeMessageSize 属性并指定值。例如:

    <acceptors>
        ...
        <acceptor name="amqp">tcp://0.0.0.0:5672?tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;protocols=AMQP;useEpoll=true;amqpCredits=1000;amqpLowCredits=300;amqpMinLargeMessageSize=204800</acceptor>
        ...
    </acceptors>

    在前面的示例中,代理配置为接受端口 5672 上的 AMQP 消息。根据 amqpMinLargeMessageSize 的值,如果接受者收到大于或等于 204800 字节的 AMQP 消息(即 200 KB),代理将消息保存为大消息。如果您没有为此属性显式指定值,代理会使用默认值 102400(即 100 KB)。

注意
  • 如果将mq pMinLargeMessageSize 设置为 -1,则禁用用于 AMQP 消息的大型消息处理。
  • 如果代理收到未超过mqp MinLargeMessageSize 的值的持久 AMQP 消息,但该消息超过了消息传递日志缓冲区的大小(使用 journal-buffer-size 配置参数指定),代理会将消息转换为大型 Core Protocol 消息,然后再将其保存到日志中。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.