2013-06-05 67 views
2

這可能是一個的n00b問題,我已經安裝上CentoOS ActiveMQ的,當我開始它像這樣設置brokerName爲「測試」:activemq brokerName always localhost?

sudo activemq start broker:tcp://localhost:61666?brokerName=Test&persistent=true&useJmx=false 

然後對其進行查詢:

sudo activemq query 

的經紀人的名字永遠是「本地主機」...

.... 
QueueSubscribers = [] 
Topics = [org.apache.activemq:type=Broker,brokerName=localhost,destinationType=Topic,destinationName=ActiveMQ.Advisory.MasterBroker] 
TotalMessageCount = 0 
SslURL = 
TemporaryQueueSubscribers = [] 
BrokerName = localhost <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<HERE 
DynamicDestinationProducers = [] 
Persistent = true 
DataDirectory = /etc.... 
.... 

有人可以說一些光?當我在一個示例Java類中使用JMS API進行連接時,指定如上所示的完整URL將其放入該代理中?這是否有多個不同名稱的經紀人?

感謝任何澄清,

+0

localhost是默認的brokername。是否可以通過安裝將activeMQ設置爲服務,以便該代理以其默認名稱始終自動啓動? – ljgw

+0

我確實將它設置爲服務,但是,哪個activemq直接直接轉到/ opt/activemq/bin/activemq二進制文件。因此,每當我的用戶從服務中分離出來,每次都開始另一次,不是嗎?如果不是這種情況,那麼如何接受在同一參數行上給出的端口號,並開始偵聽該非默認端口。 – dlite922

回答

1

Acording到文檔中,URI格式爲:

broker:(transportURI,network:networkURI)/brokerName?brokerOptions 

所以,你的情況:

broker:(tcp://localhost:61666)/Test&persistent=true&useJmx=false 

免責聲明:沒有驗證它。

另一種可能更好的方法是指出配置XML而不是URI。這可以讓你更好地控制一切。