通过 URI 的 ActiveMQ 配置的优先级
Priority of ActiveMQ configuration via URI
我在这里有几个关于 ActiveMQ 配置和优先级的类似区域的问题。我目前正在配置一个 ActiveMQ 代理来关闭消息持久性。
根据文档,我知道它可以通过代理配置来实现:
- xml配置文件()
- 客户端URI (tcp://localhost:61616?persistent=false)
- 代理端的 URI - xml 配置文件 (tcp://localhost:61616?persistent=false)。
我的第一个问题是,当我在代理端的 URI 中设置 persistence=false 但客户端将使用 URI persistence=true 连接时会发生什么?
如果我设置了但在代理端的 URI 中我提供了 persistent=false 并且客户端在连接时不会提供任何其他设置,会发生什么情况?
关于 connectionTimeout 或 maximumConnections 参数的类似问题。基于文档 (http://activemq.apache.org/tcp-transport-reference.html) 它 "can be configured on a JMS client's connection URI string or on a Brokers transport bind URI"。如果经纪人端和客户端的设置不同怎么办?如果两个客户端使用不同的设置连接怎么办? connectionTimeout 可能只与一个特定连接有关(当客户端提供此参数时),但我看不出 maximumConnections 对每个连接有何意义。
从安全的角度来看,我的理解是,当我在 server/broker 端将最大连接数限制为 100 时,不应允许客户端增加该数量。
实际上,Broker 的持久性仅在 XML 配置或嵌入式 Broker 的配置中受控,传输连接器对此无法控制,客户端也无法更改。
至于仅基于 TransportConnector 的连接配置,因此设置允许的最大连接数等这些值不能由客户端更改,如果可以的话,那将是非常糟糕的。客户端设置只影响客户端的行为而不影响代理。如果您将代理的 TCP 传输连接器配置的最大值设置为 100,那么在任何给定时间都只允许 100 个客户端,并且任何客户端都不能更改它。
我在这里有几个关于 ActiveMQ 配置和优先级的类似区域的问题。我目前正在配置一个 ActiveMQ 代理来关闭消息持久性。
根据文档,我知道它可以通过代理配置来实现:
- xml配置文件()
- 客户端URI (tcp://localhost:61616?persistent=false)
- 代理端的 URI - xml 配置文件 (tcp://localhost:61616?persistent=false)。
我的第一个问题是,当我在代理端的 URI 中设置 persistence=false 但客户端将使用 URI persistence=true 连接时会发生什么?
如果我设置了但在代理端的 URI 中我提供了 persistent=false 并且客户端在连接时不会提供任何其他设置,会发生什么情况?
关于 connectionTimeout 或 maximumConnections 参数的类似问题。基于文档 (http://activemq.apache.org/tcp-transport-reference.html) 它 "can be configured on a JMS client's connection URI string or on a Brokers transport bind URI"。如果经纪人端和客户端的设置不同怎么办?如果两个客户端使用不同的设置连接怎么办? connectionTimeout 可能只与一个特定连接有关(当客户端提供此参数时),但我看不出 maximumConnections 对每个连接有何意义。
从安全的角度来看,我的理解是,当我在 server/broker 端将最大连接数限制为 100 时,不应允许客户端增加该数量。
实际上,Broker 的持久性仅在 XML 配置或嵌入式 Broker 的配置中受控,传输连接器对此无法控制,客户端也无法更改。
至于仅基于 TransportConnector 的连接配置,因此设置允许的最大连接数等这些值不能由客户端更改,如果可以的话,那将是非常糟糕的。客户端设置只影响客户端的行为而不影响代理。如果您将代理的 TCP 传输连接器配置的最大值设置为 100,那么在任何给定时间都只允许 100 个客户端,并且任何客户端都不能更改它。