Sun Java System Message Queue 4.2 版本說明

Message Queue 4.2 的文件更新

本節包含有關 Message Queue 4.2 文件更新的資訊:

相容性問題

本節涵蓋有關 Message Queue 4.2 的相容性問題。

介面穩定性

Sun Java System Message Queue 使用許多介面,而這些介面可能會隨時間而有所變更。「Sun Java System Message Queue 4.2 Administration Guide」中的附錄 B「Stability of Message Queue Interfaces」內,根據介面穩定性對其進行分類。介面愈穩定,在後續版本中變更的可能性愈小。

與下一個主要 Message Queue 發行版本相關的問題

下一個 Message Queue 主要發行版本可能會推出變更,而使得目前的 Message Queue 用戶端應用程式與該發行版本不相容。此資訊提供目的是為了完全公開。

Message Queue 4.2 文件集的變更

Message Queue 4.2 文件集包含 Message Queue 4.1 文件集的更新,如下所述:

技術摘要

「Sun Java System Message Queue 4.2 Installation Guide」已更新過以反映 Message Queue 4.2 中的新功能,以及高可用性代理程式叢集的已更新架構。

管理指南

管理指南」已更新過以反映 Message Queue 4.2 中的新功能。

安裝與升級資訊

「Sun Java System Message Queue 4.2 Installation Guide」尚未進行更新,因此未反映 Message Queue 4.2 中的新功能,也就是安裝程式中的新 Sun Connection 註冊功能。此資訊隨附於 Message Queue 版本說明

Java 用戶端的開發者指南

Java 用戶端的開發者指南」尚未更新,因此未反映 Message Queue 4.2 中的新功能。此資訊隨附於 Message Queue 版本說明

C 用戶端的開發者指南

C 用戶端開發指南」尚未更新,因此未反映 Message Queue 4.2 中的新功能。此資訊隨附於 Message Queue 版本說明

JMX 用戶端開發指南

尚未更新,因此未反映 Message Queue 4.2 中的新功能。此資訊隨附於 Message Queue 版本說明

新的目標度量

Message Queue 4.2 包含新的目標度量,可用於監視代理程式叢集中的目標。在代理程式叢集中,目標會傳遞至叢集中的所有代理程式。但是,當產生訊息時,此訊息會儲存在訊息產生器之本機代理程式的目標中,並僅在叢集中其他代理程式的對應目標有使用中的用戶時,才會傳送至此目標。因此,儲存在指定目標的訊息,會與叢集中目標所在的代理程式相關。

換句話說,在代理程式叢集中,儲存在叢集中指定代理程式之指定目標的訊息,會包含直接產生至目標的訊息以及從叢集中遠端代理程式傳送至目標的訊息。瞭解目標中的本機訊息數 (本機產生) 與遠端訊息數 (遠端產生),有時可有助於分析代理程式叢集中的訊息路由與傳遞。

下表顯示 Message Queue 4.2 中包含的兩個新實體目標度量數量。您可透過 imqcmd list dstimqcmd query dst 指令以及透過新 JMX 屬性 (請參閱 目標監視 MBean) 取得新的度量數量。

表 1–10 實體目標度量

度量數 

說明 

是否為記錄檔? 

metrics dst 度量類型

度量主題 

Num messages remote 

產生至叢集中遠端代理程式且目前儲存在記憶體與永久存放區中的訊息數。此數目不包含作業事件中的訊息。 

否 

無法使用 [您可透過 imqcmd query dst 指令取得]

無法使用 

Total message bytes remote 

產生至叢集中遠端代理程式且目前儲存在記憶體與永久存放區中的訊息總大小 (位元組數)。此值不包含作業事件中的訊息。 

否 

無法使用

無法使用 

在 Solaris 10 作業系統上自動啟動代理程式

本節說明如何在 Solaris 10 作業系統上配置自動啟動代理程式。相對於在電腦重新開機時,使用 rc 檔案執行自動啟動代理程式,下列程序改用 Solaris 10 服務管理設備 (SMF)。

如需有關使用服務管理設備的更多資訊,請參閱 Solaris 10 文件。

Procedure在 Solaris 10 作業系統上執行自動啟動代理程式

  1. 將 mqbroker 服務匯入 SMF 儲存庫中。

    # svccfg import /var/svc/manifest/application/sun/mq/mqbroker.xml

  2. 檢查 mqbroker 服務的狀態,以確認匯入是否成功。

    # svcs mqbroker

    輸出結果與下列指令類似:


    STATE STIME FMRI
    disabled 16:22:50 svc:/application/sun/mq/mqbroker:default

    服務一開始會顯示為停用。

  3. 啟用 mqbroker 服務。

    # svcadm enable svc:/application/sun/mq/mqbroker:default

    啟用 mqbroker 服務會啟動 imqbrokerd 程序。重新開機之後會隨即重新啟動代理程式。

  4. 配置 mqbroker 服務以將任何所需的引數傳送至 imqbrokerd 指令。

    使用 options/server_args 特性,將引數傳送至 imqbrokerd。例如,若要增加 -loglevel DEBUGHIGH,請執行下列作業:


    # svccfg
    svc:> select svc:/application/sun/mq/mqbroker
    svc:/application/sun/mq/mqbroker> setprop options/server_args=\"-loglevel DEBUGHIGH\"
    svc:/application/sun/mq/mqbroker> exit

JMX API 的變更

Message Queue 支援 Java Management Extensions (JMX) API,可從 Message Queue 用戶端應用程式以程式設計方式配置及監視代理程式功能。Message Queue 4.2 包含 JMX API 的延伸,以支援發行版本中的新特性與功能。下列 Mbean 已定義新的 JMX 屬性、作業及/或查找鍵值:

ConsumerManager 監視 MBean

下表中的屬性、作業與查找鍵值支援發佈程式或訂閱者的多個目標中所述的功能。

下列屬性的名稱已定義為公用程式類別 com.sun.messaging.jms.management.server.ConsumerAttributes 中的靜態常數。

表 1–11 ConsumerManager 監視屬性

名稱 

類型 

可否設定? 

說明 

NumWildcardConsumers

Integer

否 

與代理程式相關的萬用字元訊息用戶數 

下列作業的名稱已定義為公用程式類別 com.sun.messaging.jms.management.server.ConsumerOperations 中的靜態常數。

表 1–12 ConsumerManager 監視作業

名稱 

參數 

結果類型 

說明 

getConsumerWildcards

無 

String[]

與代理程式相關之目前用戶所使用的萬用字元字串 

getNumWildcardConsumers

萬用字元字串 

Integer

使用指定之萬用字元字串且與代理程式相關的目前用戶數 

下列查找鍵值已定義為公用程式類別 com.sun.messaging.jms.management.server.ConsumerInfo 中的靜態常數。

表 1–13 訊息用戶資訊的查找鍵值

名稱 

值類型 

說明 

DestinationNames

String[]

符合萬用字元用戶所使用之萬用字元的目標名稱 

僅限主題目標。 

Wildcard

Boolean

是否為萬用字元用戶? 

僅限主題目標。 

目標配置 MBean

下表中的屬性支援XML 有效負載訊息的模式驗證中所述的功能。

下列屬性的名稱已定義為公用程式類別 com.sun.messaging.jms.management.server.DestinationAttributes 中的靜態常數。

表 1–14 目標配置屬性

名稱 

類型 

可否設定? 

說明 

ValidateXMLSchemaEnabled

Boolean

是 

是否啟用 XML 模式驗證? 

若設定為 false 或未設定,則目標不會啟用 XML 模式驗證。

XMLSchemaURIList

String

是 

以空格分隔的 XML 模式文件 (XSD) URI 字串清單 

這些 URI 指向 XML 模式驗證 (若已啟用) 所使用的一或多個 XSD 位置。 

若指定多個 URI,請使用雙引號括住此值。 

範例: 

http://foo/flap.xsd http://test.com/test.xsd

若此特性未設定或為空值,且已啟用 XML 驗證,則會使用 XML 文件中指定的 DTD 執行 XML 驗證。 

ReloadXMLSchemaOnFailure

Boolean

是 

是否啟用 [失敗時重新載入 XML 模式]? 

若設定為 False 或未設定,則驗證失敗時不會重新載入模式。 

目標管理員配置 MBean

上述的新目標配置 MBean 屬性支援新功能XML 有效負載訊息的模式驗證,其用途在於使用目標管理員配置 MBean 的 create 作業建立目標。

目標監視 MBean

下表中的第一組屬性支援發佈程式或訂閱者的多個目標中所述的功能,而第二組屬性支援新的目標度量中所述的增強功能。

下列屬性的名稱已定義為公用程式類別 com.sun.messaging.jms.management.server.DestinationAttributes 中的靜態常數。

表 1–15 目標監視屬性

名稱 

類型 

可否設定? 

說明 

NumWildcards

Integer

否 

與目標相關之萬用字元訊息產生器及萬用字元訊息用戶目前的數目 

僅限主題目標。 

NumWildcardProducers

Integer

否 

與目標相關之萬用字元訊息產生器目前的數目 

僅限主題目標。 

NumWildcardConsumers

Integer

否 

與目標相關之萬用字元訊息用戶目前的數目 

僅限主題目標。 

NumMsgsRemote

Long

否 

產生至叢集中遠端代理程式且目前儲存在記憶體與永久存放區中的訊息數。此數目不包含作業事件中的訊息。 

TotalMsgBytesRemote

Long

否 

產生至叢集中遠端代理程式且目前儲存在記憶體與永久存放區中的訊息總大小 (位元組數)。此值不包含作業事件中的訊息。 

下表中的作業支援發佈程式或訂閱者的多個目標中所述的功能。

下列作業的名稱已定義為公用程式類別 com.sun.messaging.jms.management.server.DestinationOperations 中的靜態常數。

表 1–16 目標監視作業

名稱 

參數 

結果類型 

說明 

getWildcards

無 

String[]

與目標相關之目前用戶與產生器所使用的萬用字元字串 

僅限主題目標。 

getConsumerWildcards

無 

String[]

與目標相關之目前用戶所使用的萬用字元字串 

僅限主題目標。 

getProducerWildcards

無 

String[]

與目標相關之目前產生器所使用的萬用字元字串 

僅限主題目標。 

getNumWildcardConsumers

萬用字元字串 

Integer

使用指定萬用字元字串且與目標相關的目前用戶數 

僅限主題目標。 

getNumWildcardProducers

萬用字元字串 

Integer

使用指定萬用字元字串且與目標相關的目前產生器數 

僅限主題目標。 

ProducerManager 監視 MBean

下表中的屬性、作業與查找鍵值支援發佈程式或訂閱者的多個目標中所述的功能。

下列屬性的名稱已定義為公用程式類別 com.sun.messaging.jms.management.server.ProducerAttributes 中的靜態常數。

表 1–17 ProducerManager 監視屬性

名稱 

類型 

可否設定? 

說明 

NumWildcardProducers

Integer

否 

與代理程式相關的萬用字元訊息產生器數 

下列作業的名稱已定義為公用程式類別 com.sun.messaging.jms.management.server.ProducerOperations 中的靜態常數。

表 1–18 ProducerManager 監視作業

名稱 

參數 

結果類型 

說明 

getProducerWildcards

無 

String[]

與代理程式相關之目前產生器所使用的萬用字元字串 

getNumWildcardProducers

萬用字元字串 

Integer

使用指定萬用字元字串且與代理程式相關的目前產生器數 

下列查找鍵值已定義為公用程式類別 com.sun.messaging.jms.management.server.ProducerInfo 中的靜態常數。

表 1–19 訊息產生器的查找鍵值資訊

名稱 

值類型 

說明 

DestinationNames

String[]

符合萬用字元產生器所使用之萬用字元的目標名稱 

僅限主題目標。 

Wildcard

Boolean

是否為萬用字元產生器? 

僅限主題目標。 

用戶端認證的 DN 使用者名稱格式支援

Message Queue 4.2 根據 LDAP 使用者儲存庫,支援用戶端連線認證中的 DN 使用者名稱格式。此支援包含下列新代理程式特性 (及值):

imq.user_repository.ldap.usrformat=dn

此特性可讓代理程式透過從 DN 使用者名稱格式中擷取下列特性所指定的屬性值,以根據 LDAP 使用者儲存庫中的項目,認證用戶端使用者:

imq.user_repository.ldap.uidattr

代理程式使用上述屬性值,作為存取控制作業中的使用者名稱。

例如,若 imq.user_repository.ldap.uidattr=udi 與用戶端認證使用者名稱使用 udi=mquser,ou=People,dc=red,dc=sun,dc=com 格式,則會擷取「mquser」以執行存取控制。

JAAS 認證增強功能

Message Queue 4.2 JAAS 認證支援依據 IP 位址與使用者名稱進行認證。