我试图找出一种有效的配置方式
子系统xmlns =" urn:jboss:domain:messaging-activemq:1.0"
standalone.xml中的ActiveMQ子系统。 我发现这个子系统上的widlfly 10文档足以让你入门。
但是当你想进一步调整Active MQ行为时显然缺乏。 (例如http://activemq.apache.org/how-do-i-configure-10s-of-1000s-of-queues-in-a-single-broker-.html)
为了理解ActiveMQ的优缺点,我更喜欢并尝试使用活动MQ作为文档的主要来源。
最后,我的期望是,我应该能够找到一种方法,以某种方式配置wildfly standalone.xml配置中的文档中解释的活动mq功能。 Wildfly充当配置ActiveMQ的接口,但它并不限制我可以配置的内容。
这是我正在努力的部分。
一旦我阅读了ActiveMQ文档,我就想要测试的功能有所了解。然后我去寻找如何更新我的standalone.xml以适当地配置jms代理,我需要寻找允许我这样做的XML元素和属性。
所以有了这个背景,这里有一些问题:
(a)为什么是: docs \ schema \ jboss-as-messaging_1_0.xsd to jboss-as-messaging_3_0.xsd
与必须实际写入standalone.xml的配置不一致。 例如,如果我们查看地址设置元素。 在Wildfly 10官方文档中以及我的机器本地文档中,可以通过atrributes配置此元素,如下所示。
<address-setting name="#" slow-consumer-threshold="20" message-counter-history-day-limit="10" page-size-bytes="2097152" max-size-bytes="10485760" max-delivery-attempts="-1" expiry-address="jms.queue.ExpiryQueue" dead-letter-address="jms.queue.DLQ"/>
另一方面,如果我们查看子系统的XSD,地址设置类型应该由元素而不是属性组成。
<xs:complexType name="address-settingType">
<xs:all>
<xs:element maxOccurs="1" minOccurs="0" name="dead-letter-address" type="xs:string" />
<xs:element maxOccurs="1" minOccurs="0" name="expiry-address" type="xs:string" />
<xs:element maxOccurs="1" minOccurs="0" name="redelivery-delay" type="xs:long" />
<xs:element maxOccurs="1" minOccurs="0" name="max-delivery-attempts" type="xs:int" />
<xs:element maxOccurs="1" minOccurs="0" name="max-size-bytes" type="xs:long" />
<xs:element maxOccurs="1" minOccurs="0" name="page-size-bytes" type="xs:long" />
<xs:element maxOccurs="1" minOccurs="0" name="page-max-cache-size" type="xs:int" />
<xs:element maxOccurs="1" minOccurs="0" name="address-full-policy" type="addressFullMessagePolicyType" />
<xs:element maxOccurs="1" minOccurs="0" name="message-counter-history-day-limit" type="xs:int" />
<xs:element maxOccurs="1" minOccurs="0" name="last-value-queue" type="xs:boolean" />
<xs:element maxOccurs="1" minOccurs="0" name="redistribution-delay" type="xs:long" />
<xs:element maxOccurs="1" minOccurs="0" name="send-to-dla-on-no-route" type="xs:boolean" />
</xs:all>
<xs:attribute name="match" type="xs:string" use="required"/>
</xs:complexType>
这对我来说是一个问题。 因为如果找不到可以配置的每个属性的文档页面,那么我希望在那里找到具有此技术级别详细信息的XSD。然后,我可以独立于如何完成日期或详细的文档,找到我的方式来设置我想要启用/禁用或调整的功能。
但是如果我发现的XSD与我最终在stanadalone.xml上编写的配置不一致并且工作正常,我真的不相信XSD是我可以配置的功能的可靠信息源。 所以,一方面,我在元素上配置属性。另一方面,我有一个XSD告诉我应该使用带有元素的元素。 这是什么?
(b)下一个问题是关于可以做的配置范围。 我想知道我们通过standalone.xml配置ActiveMQ子系统的能力是否有限,或者我们是否具备配置子系统的全部功能。
例如,如果您查看每个目标策略的ActiveMQ页面。 http://activemq.apache.org/per-destination-policies.html
可以配置以下功能: &#34; optimizedDispatch&#34; 如果要在活动MQ代理中配置数百个队列,则ActiveMQ建议使用哪个。 为了优化调度策略寻找XSD,我发现元素或属性的形式都没有提到这个配置元素。 我是否可以在目的地上实际配置此行为?
我想知道通过wildfly子系统配置调整ActiveMQ可以走多远?
ActiveMQ支持的内容与野生动物站独立xml支持的配置之间的界限允许我进行调整。
有人能为这两个问题带来一些启示吗?
最诚挚的问候。
答案 0 :(得分:1)
WildFly附带ActiveMQ Artemis作为消息系统,而不是旧的和经典的ActiveMQ。
这两个经纪人是不同的:
您可以在以下网站找到ActiveMQ Artemis文档:
WildFly还有一些文档: