Sun Java System Message Queue 4.1 版本說明

代理程式支援:JMX 相關特性

增加了數個新的代理程式特性以支援 JMX API (請參閱表 1–3)。您無法使用 Message Queue 指令公用程式 (imqcmd) 從指令行設定這些特性;而是要使用代理程式公用程式 (imqbrokerd) 的 -D 選項設定,或是在代理程式的實例配置檔案 (config.properties) 中手動編輯。此外,其中的部分特性 (imq.jmx.rmiregistry.start imq.jmx.rmiregistry.use imq.jmx.rmiregistry.port) 可以透過表 1–4 中所述之新的代理程式公用程式選項進行設定。該表列出每個選項、指定其類型,並說明其用途。

表 1–3 JMX 支援功能的新代理程式特性

特性 

類型 

說明 

imq.jmx.rmiregistry.start

Boolean

指定是否在代理程式啟動時啟動 RMI 登錄。

若為 true,則代理程式會在 imq.jmx.rmiregistry.port 指定的連接埠啟動 RMI 登錄,並使用該登錄儲存 JMX 連接器的 RMI stub。請注意,此時會忽略 imq.jmx.rmiregistry.use 的值。

預設值:false

imq.jmx.rmiregistry.use

Boolean

指定是否使用外部 RMI 登錄。

僅在 imq.jmx.rmiregistry.startfalse 時適用。

若為 true,則代理程式會在 imq.jmx.rmiregistry.port 指定的連接埠使用外部 RMI 登錄,以儲存 JMX 連接器的 RMI stub。代理程式啟動時,必須已在執行外部 RMI 登錄。

預設值:false

imq.jmx.rmiregistry.port

Integer

RMI 登錄的連接埠號

僅在 imq.jmx.rmiregistry.startimq.jmx.rmiregistry.usetrue 時適用。接著可藉由在 JMX 服務 URL 的 URL 路徑中包含此連接埠號,以配置 JMX 連接器使用 RMI 登錄。

預設值:1099

imq.jmx.connector.list

String

預先配置的 JMX 連接器名稱,以逗號分隔

預設值:jmxrmi,ssljmxrmi

imq.jmx.connector.activelist

String

代理程式啟動時要啟動的 JMX 連接器名稱,以逗號分隔

預設值:jmxrmi

imq.jmx.connector.connectorName.urlpath

String

連接器 connectorName 之 JMX 服務 URL 的 urlPath 元件

這在 JMX 服務 URL 路徑必須明確設定時 (例如使用共用外部 RMI 登錄時),會很有用。

預設值:若是使用 RMI 登錄儲存 JMX 連接器的 RMI stub (亦即如果 imq.jmx.registry.startimq.jmx.registry.usetrue)

   /jndi/rmi://brokerHost:rmiPort
      /brokerHost/brokerPort/connectorName

若未使用 RMI 登錄 (根據預設,imq.jmx.registry.startimq.jmx.registry.use 皆為 false):

   /stub/rmiStub

其中 rmiStub 是 RMI stub 本身的已編碼和串列化表示式

 

imq.jmx.connector.connectorName.useSSL

Boolean

指定連接器 connectorName 是否使用安全傳輸層 (SSL)。

預設值:false

imq.jmx.connector.connectorName.brokerHostTrusted

Boolean

指定是否信任代理程式提供給連接器 connectorName 的所有憑證。

僅在 imq.jmx.connector.connectorName.useSSLtrue 時適用。

若為 false,Message Queue 用戶端執行階段會驗證提供給它的所有憑證。若憑證的簽署者不在用戶端信任清單存放區中,驗證就會失敗。

若為 true,則會略過憑證的驗證。這在軟體測試期間使用自我簽署的憑證這類情況時,就很有用。

預設值:false

imq.jmx.connector.list 特性會定義一組在代理程式啟動時建立的已命名 JMX 連接器;imq.jmx.connector.activelist 會指定其中要啟動的連接器。每個已命名的連接器接著會有各自的特性集:

imq.jmx.connector.connectorName .urlpath

imq.jmx.connector.connectorName .useSSL

imq.jmx.connector.connectorName .brokerHostTrusted

根據預設,會建立兩個 JMX 連接器,名為 jmxrmissljmxrmi;第一個連接器會配置為不使用 SSL 加密 (imq.jmx.connector.jmxrmi.useSSL = false),第二個連接器則使用 (imq.jmx.connector.ssljmxrmi.useSSL = true)。根據預設,代理程式啟動時只會啟動 jmxrmi 連接器;請參閱JMX 用戶端的 SSL 支援,以取得有關如何啟動 ssljmxrmi 連接器進行安全通訊的資訊。

為方便使用,還在指令行代理程式公用程式 (imqbrokerd) 中增加了新的選項 (表 1–4),以控制 RMI 登錄的使用、啟動和連接埠。這些選項的用法和效果與其等效代理程式特性 (如表 1–3 中所述) 相同。該表列出每個選項、指定其等效代理程式特性,並說明其用法。

表 1–4 JMX 支援功能的新代理程式公用程式選項

選項 

等效代理程式特性 

說明 

-startRmiRegistry

imq.jmx.rmiregistry.start

指定是否在代理程式啟動時啟動 RMI 登錄。

-useRmiRegistry

imq.jmx.rmiregistry.use

指定是否使用外部 RMI 登錄。

-rmiRegistryPort

imq.jmx.rmiregistry.port

RMI 登錄的連接埠號

一個新的子指令 (表 1–5) 增加至指令行指令公用程式 (imqcmd),以列出在代理程式啟動時建立和啟動的 JMX 連接器之 JMX 服務 URL。JMX 用戶端若要不使用 Message Queue 簡易類別 AdminConnectionFactory 即取得其 JMX 連接器,就需要此資訊。此資訊也可用於透過 Java 監視與管理主控台 (jconsole) 等一般 JMX 瀏覽器,來管理與監視 Message Queue。

表 1–5 新指令公用程式子指令

子指令 

說明 

list jmx

列出 JMX 連接器的 JMX 服務 URL