版本 5 範例
使用 ActiveMQ Classic 5 > 版本 5 範例
自 5.12.0 版本起,Apache ActiveMQ Classic 推出新的工具,可用於從代理程式生產和消費訊息。
先決條件
在執行範例之前,您應該嘗試在您的機器上執行 JMS 代理程式。請依照安裝說明來使用 ActiveMQ Classic 的二進位發行版。若要在命令殼層中執行代理程式,請輸入
bin/activemq console
這會啟動 ActiveMQ Classic。
執行
您可以從命令列執行
${ACTIVEMQ_HOME}/bin/activemq producer
${ACTIVEMQ_HOME}/bin/activemq consumer
如果您有可用的 activemq-all
jar,您可以使用以下方式達成相同的目的
java -jar activemq-all-5.x.x.jar producer
java -jar activemq-all-5.x.x.jar consumer
如果您在Karaf內部執行,您可以將命令執行為
activemq:producer
activemq:consumer
選項
如需命令的所有選項,請使用 --help
參數執行它們。關於生產者和消費者的最新選項,可以在原始碼中找到。
範例
以下是一些更進階功能的範例。
若要傳送具有自訂文字的文字訊息,請使用
bin/activemq producer --message "My message" --messageCount 1
若要傳送自訂長度的位元組訊息,請使用
bin/activemq producer --messageSize 100 --messageCount 1
若要傳送內容從 URL 取得的文字訊息
bin/activemq producer --payloadUrl https://activemq.dev.org.tw/schema/core/activemq-core.xsd --messageCount 1
若要在交易中使用消費,請使用
bin/activemq consumer --transacted true
若要使用用戶端確認,請使用
bin/activemq consumer --ackMode CLIENT_ACKNOWLEDGE
若要使用持久主題訂閱者,請使用
bin/activemq consumer --durable true --clientId example --destination topic://TEST
舊範例
在舊版的 ActiveMQ Classic 中,對應的範例位於 examples/
或 examples/openwire/swissarmy/
目錄中,您可以使用 ant 腳本執行類似的任務。
ant producer
ant consumer
其他範例
在 examples/
目錄中 (取決於版本),您可以找到更多使用各種協定 (mqtt, amqp, ...) 和用戶端 (Java, Ruby, JavaScript, ...) 的代理程式範例,所以這是開始學習的好地方。此外,examples/conf/
目錄包含許多不同的組態範例,您可以將其用作部署的起點。