版本 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/ 目錄包含許多不同的組態範例,您可以將其用作部署的起點。

參見

Apache、ActiveMQ、Apache ActiveMQ、Apache 羽毛標誌和 Apache ActiveMQ 專案標誌為 Apache 軟體基金會的商標。版權所有 © 2024,Apache 軟體基金會。根據 Apache License 2.0 授權。