10.2.4. 设置发送消息率


AMQ Broker 也可以限制制作者可以发出消息的速度。制作者率以每秒消息单位指定。将它设置为 -1(默认值)禁用速率限制流控制。

设置发送消息率

以下示例演示了如何在制作者使用核心 JMS 客户端时设置发送消息的速度。每个示例将消息每秒发送到 10 的最大值。

步骤

  • 设置制作者可以发送消息的速率。

    • 如果核心 JMS 客户端使用 JNDI 来实例化其连接工厂,请将 producerMaxRate 参数包含为连接字符串 URL 的一部分。将 URL 存储在 JNDI 上下文环境中。以下示例使用 jndi.properties 文件来存储 URL。

      java.naming.factory.initial=org.apache.activemq.artemis.jndi.ActiveMQInitialContextFactory
      java.naming.provider.url=tcp://localhost:61616?producerMaxRate=10
    • 如果核心 JMS 客户端不使用 JNDI 来实例化其连接工厂,请将值传递到 ActiveMQConnectionFactory.setProducerMaxRate()

      ConnectionFactory cf =  ActiveMQJMSClient.createConnectionFactory(...)
      cf.setProducerMaxRate(10);

相关信息

如需了解如何限制发送消息的频率,请参阅 INSTALL_DIR/examples/standard 中的 制作者-rate-limit 示例。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.