在ActiveMQ中,我们可以将systemUsage(限制)值设置为代理URI上的代理选项吗?

时间:2018-07-05 18:42:52

标签: java activemq

我将ActiveMQ 5.15.2与具有VM传输的嵌入式代理一起使用。我想知道是否可以在代理URI上设置systemUsage限制值。如果我不尝试设置systemUsage就开始...

BrokerService broker = BrokerFactory.createBroker("broker:(vm://myBrokerName)?brokerName=myBrokerName&useJmx=false&dataDirectory=/myDataDirectory/");
SystemUsage su = broker.getSystemUsage();
su.getMemoryUsage().setLimit(memLimit * 1024L * 1024L);
su.getStoreUsage().setLimit(storeLimit * 1024L * 1024L * 1024L);
su.getTempUsage().setLimit(tempLimit * 1024L * 1024L * 1024L);

一切顺利,ActiveMQ启动。

但是,如果我尝试在代理URI中设置systemUsage部分(最后4行),例如:

BrokerService broker = BrokerFactory.createBroker("broker:(vm://myBrokerName)?brokerName=myBrokerName&useJmx=false&dataDirectory=/myDataDirectory/&systemUsage.memoryUsage.limit=1048576");

然后ActiveMQ抱怨:

  

不能在BrokerService上设置1个Broker选项。检查选项拼写是否正确。未知参数= [{systemUsage.memoryUsage.limit = 1048576}]。无法启动此BrokerService。

只是想知道我们是否可以将systemUsage设置为属性。当然,我知道使用xml配置会更容易。

0 个答案:

没有答案