8.6. 设置消息生产率
AMQ Core Protocol JMS 也可以限制制作者发送消息的速率。生成者率以每秒的消息单位指定。将它设置为 -1 (默认值),禁用速率限制的流控制。
以下示例演示了如何设置生成者使用 AMQ 核心协议 JMS 时发送消息的速度。每个示例将最大速率设置为每秒 10 个消息。
流程
如果客户端使用 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如果客户端不使用 JNDI 来实例化其连接工厂,请将值传递给
ActiveMQConnectionFactory.setProducerMaxRate ()。ConnectionFactory cf = ActiveMQJMSClient.createConnectionFactory(...) cf.setProducerMaxRate(10);
其他资源
如需了解如何限制发送消息率,请参阅 & lt;install-dir> /examples/standard 中的 producer-rate-limit 示例。