萬用字元
我們支援目的地萬用字元,以便輕鬆支援聯合名稱階層。此概念在金融市場數據中流行已久,作為將事件(例如價格變動)組織到階層中,並使用萬用字元輕鬆訂閱您感興趣的資訊範圍的一種方式。
例如,假設您正在從股票交易所資料饋送發送價格訊息。您可以使用類似如下的目的地:
PRICE.STOCK.NASDAQ.ORCL
來發佈甲骨文公司在納斯達克的價格,以及PRICE.STOCK.NYSE.IBM
來發佈 IBM 在紐約證券交易所的價格
然後,訂閱者可以使用確切的目的地來訂閱其所需的確切價格。或者,它可以使用萬用字元來定義與目的地進行階層式模式匹配的訂閱。
支援的萬用字元
我們支援以下萬用字元,這些萬用字元是相當標準的做法;萬用字元不是 JMS 規範的一部分,因此是自訂的增強功能。
.
用於分隔路徑中的名稱*
用於比對路徑中的任何名稱>
用於遞迴比對從此名稱開始的任何目的地
例如,使用上面的範例,以下訂閱是可行的
訂閱
意義
`PRICE.>`
任何交易所任何產品的任何價格
`PRICE.STOCK.>`
任何交易所任何股票的任何價格
`PRICE.STOCK.NASDAQ.*`
納斯達克上的任何股票價格
`PRICE.STOCK.*.IBM`
任何交易所的任何 IBM 股票價格
注意:** 不要在萬用字元表達式中的 '>' 之後指定任何字串,它將被忽略。例如,使用萬用字元
PRICE.>.IBM 也會比對
PRICE.STOCK.NASDAQ.FB.` 使用 '>' 實際上是比對到目的地名稱的結尾。
自訂路徑分隔符號
從 5.5.0 版本開始,我們支援外掛程式,允許客戶端使用自訂路徑分隔符號。因此,您可以不用
`FOO.BAR.*`
您可以使用
`FOO/BAR/*`
到
<plugins>
.....
<destinationPathSeparatorPlugin/>
</plugins>
ActiveMQ Classic 3.2.1 版本
此外掛程式將使用的預設路徑分隔符號是 /
。您可以使用 pathSeparator
屬性進一步自訂它。