Sun GlassFish Message Queue 4.4 版本說明

Message Queue 4.4 與最近發行版本的新功能

下列各節將說明 Message Queue 4.4 及舊版 Message Queue 4.x 系列的新功能:

Message Queue 4.4 的新功能

Message Queue 4.4 是包含數項增強功能與錯誤修正的次要發行版本。本節將說明此發行版本所包含的新功能:

JMS 橋接器服務

因為 JMS 規格並未定義代理程式及用戶端之間通訊的線路協定,所以每一項 JMS 提供者 (包括 Message Queue) 均定義且使用自己的專屬協定。這種狀況導致 JMS 提供者之間無法互通。

Message Queue 4.4 的 JMS 橋接器服務,可讓 Message Queue 代理程式將自己的目標對映到外部 JMS 提供者的目標,藉以補其不足。此項對映能讓 Message Queue 代理程式與外部 JMS 提供者的用戶端進行通訊。

JMS 橋接器服務能夠對映具備以下條件的外部 JMS 提供者目標:

許多開放原始碼及商用 JMS 提供者都符合這些需求,這使得 JMS 橋接器服務能將 Message Queue 整合至使用其他 JMS 提供者的現有訊息傳送環境。

如需有關 JMS 橋接器服務的更多資訊,請參閱:

STOMP 橋接器服務

如前文所述,JMS 規格並未定義代理程式及用戶端之間的通訊線路協定。串流文字導向訊息傳送協定·(Streaming·Text·Oriented·Messaging·Protocol,·STOMP)·開放原始碼專案·(位於 http://stomp.codehaus.org??)·定義了一種簡易的線路協定,能讓以任何語言撰寫的用戶端使用,以便與支援·STOMP·協定的所有訊息傳送提供者通訊。

Message Queue 4.4 透過 STOMP 橋接服務支援 STOMP 協定。此項服務能讓 Message Queue 代理程式與 STOMP 用戶端通訊。

如需有關 STOMP 橋接器服務的更多資訊,請參閱:

其他增強功能

Message Queue 4.4 也提供下列其他增強功能:

新的通用訊息服務 (UMS) 功能

UMS 現備有利用 HTTP GET 提供數項服務的功能:

如需 UMS 簡介,請參閱通用訊息服務 (UMS)。如需 UMS API 的文件,請參閱 https://mq.dev.java.net/4.3-content/ums/protocol.html。如需多種語言的程式設計範例,請參閱 https://mq.dev.java.net/4.3-content/ums/examples/README.html

IPS 套裝軟體支援

Message Queue 現在使用開放原始碼的影像封裝系統 (Image Packaging System, IPS) (亦稱為 pkg(5) 系統) 封裝發行。之所以增加此封裝方法,是為了使 Message Queue 與 Sun GlassFish Enterprise Server 2.1.1 整合。

Message Queue 4.3 的新功能

Message Queue 4.3 是包含數項增強功能及錯誤修正的次要發行版本。本節將說明此發行版本所包含的新功能:

通用訊息服務 (UMS)

Message Queue 4.3 採用新的通用訊息服務 (UMS),以及可從任何啟用 http 的裝置存取 Message Queue 的訊息傳送 API。因而幾乎所有應用程式皆可與其他應用程式通訊,並獲得 JMS 傳送穩定性提高及保證送達等優點。此外,UMS 也讓 JMS 訊息傳送功能的延展性更佳,讓訊息傳送用戶端的數量達到網際網路規模。

架構

下圖顯示基本的 UMS 架構:

圖 1–1 UMS 架構

本圖說明 UMS 是非 JMS 用戶端與 JMS 提供者之間的閘道。

在 Web 伺服器中執行的 UMS 不受程式語言和平台限制。UMS 是所有非 JMS 用戶端應用程式及 JMS 提供者之間的閘道。UMS 會接收使用 UMS API 傳送的訊息、將其轉換成 JMS 訊息,再使用 JMS 提供者的原生協定,將訊息傳送至提供者的目標。同樣地,UMS 會從 JMS 提供者的目標中擷取訊息、將其轉換成文字或 SOAP 訊息,再根據用戶端請求,透過 UMS API 將訊息傳送至非 JMS 用戶端。

協定型的 UMS API 簡單且不受程式語言限制,支援 Web 及非 Web 應用程式,且可與程序檔及程式語言一起使用。此 API 有兩種型式:使用表象化狀態傳輸 (Representational State Transfer, REST) 樣式協定的簡單訊息傳送 API,以及將協定嵌入 SOAP 訊息標頭的 XML 訊息傳送 API。但在這兩種狀況下,API 傳送或接收訊息,都僅需要單一的 http 請求。

由於 UMS API 簡單又具彈性,因此 AJAX、.NET、Python、C、Java 及許多其他應用程式,都可將文字訊息及 (或) SOAP (具附件) 訊息傳送至 JMS 目標,或接收來自 JMS 目標的訊息。例如,Python 應用程式可與 .NET 應用程式通訊,iPhone 可與 Java 應用程式通訊等。

在 Message Queue 4.3 中,UMS 僅支援以 Message Queue 當作 JMS 提供者。

其他功能

UMS 的功用不僅止於上述的簡單閘道,還支援有狀態及無狀態的用戶端階段作業。用戶端若提出請求,UMS 會在多項服務請求之間都維持用戶端應用程式的階段作業狀態。UMS 可使用以容器管理的認證,或配置成以 Message Queue 代理程式認證用戶端,或兩者都用。UMS 也支援作業事件,讓用戶端應用程式得以確定多項服務請求,或將其回復為單一不可分割的單元。

因為 UMS 支援大量用戶端以單一連線連接到 Message Queue 代理程式,所以可緩和代理程式連線服務的負載,以達到最佳的延展性。此外,您可水平擴充 UMS 的處理能力,允許網際網路規模的訊息傳送負載。

在用戶端部分,因為協定型 UMS API 非常簡單,因而不需要用戶端程式庫。所以,API 未來可擴充 API 以實作其他 JMS 功能,而不必升級用戶端應用程式。

使用 UMS

若要使用 UMS,請將 UMS 部署至支援 Servlet 2.4 或更高規格的 Web 容器中,然後啟動 Message Queue 代理程式,再建立適當的目標,最後撰寫使用 UMS API 傳送或接收訊息的訊息傳送應用程式。

包含在 Message Queue 4.3 發行軟體中的 UMS imqums.war 檔案,安裝在下列因平台而異的位置中:

您可將 .war 檔案重新命名為適當的名稱。

表 1–5 imqums.war 檔案的位置

平台 

imqums.war 的位置

Solaris 

/usr/share/lib/imq

Linux 

/opt/sun/mq/share/lib

AIX 

IMQ_HOME/lib

Windows 

IMQ_HOME\lib

imqums.war 部署至位於 localhost:port 的 Web 容器之後,即可在下列位置找到 UMS 文件:

http://localhost:port/imqums

否則可找到 UMS 文件,如下所示:

支援的 Web 容器

下列 Web 容器目前都支援 UMS:

AIX 平台支援

Message Queue 4.3 提供 AIX 平台套裝軟體,以及安裝這些軟體的安裝程式。

Message Queue AIX 實作支援下列軟體:

如需安裝說明,請參閱「Sun GlassFish Message Queue 4.4 Installation Guide」中的第 4 章「AIX Installation」

在 AIX 平台中,Message Queue 檔案會安裝在單一 Message Queue 的主目錄 IMQ_HOME 下。IMQ_HOME 表示目錄 mqInstallHome/mq,其中 mqInstallHome 為安裝產品時所指定的安裝主目錄 (預設為 home-directory /MessageQueue)。

所產生的 Message Queue 目錄結構與 Windows 平台的目錄結構相同 (請參閱「Sun GlassFish Message Queue 4.4 Administration Guide」中的附錄 A「Platform-Specific Locations of Message Queue Data」之 Windows 一節)。

Message Queue 支援 AIX 平台,包括對 Message Queue C-API 的支援。如需在 AIX 平台上建立及編譯 C 應用程式的說明,請參閱 XREF。

新的 Zip 安裝程式

Message Queue 4.3 採用新的 Zip 發行軟體安裝程式,與原生套裝發行軟體大相逕庭。此安裝程式的功能是安裝適用於 AIX 平台的 Message Queue .zip 新發行軟體。

新的安裝程式可將 Message Queue .zip 檔案解壓縮至您具有寫入存取權 (不需要超級使用者權限 ) 的任何目錄,也可讓您向 Sun Connection 註冊 Message Queue 安裝。

zip 發行軟體中已不再包含 Java Runtime (大部分的網站都已有),以將下載的隨附軟體大小減至最小。所以,installer 指令會要求以 JAVA_HOME 環境變數 (或在指令行使用 -j 選項) 指定 JDK 或 JRE,如下所示:

$ installer -j JDK/JRE-path

此處的 JDK/JRE-path 是指定的 JDK 或 JRE 路徑。

擴充平台支援

Message Queue 4.3 會申請下列更新平台的支援認證標章:

其他增強功能

Message Queue 4.3 包含下列其他增強功能:

Windows 平台上的新目錄結構

Windows 平台上 Message Queue 的安裝目錄結構,已從舊版的結構修改成符合 AIX 平台的結構。Solaris 及 Linux 平台日後也將採用此目錄結構,以利在單一電腦上執行多項安裝作業,以及透過 Sun Connection 自動更新 Message Queue;Sun Connection 是可協助您追蹤、組織及維護 Sun 軟硬體的 Sun 代管服務 (請參閱Sun Connection 註冊的安裝程式支援)。

新代理程式特性

下列新特性可供配置代理程式使用:

表 1–6 代理程式路由及傳送特性

特性 

類型 

預設值 

說明 

imq.transaction.producer.maxNumMsgs

整數 

1000

產生器在單一作業事件中可處理的訊息數上限。建議使用小於 5000 的值,以防止耗盡資源。 

imq.transaction.consumer.maxNumMsgs

整數 

100

用戶在單一作業事件中可處理的訊息數上限。建議使用小於 1000 的值,以防止耗盡資源。 

imq.persist.jdbc.connection.limit

整數 

5

資料庫可以開啟的連線數上限。 

JMX 管理 API 增強功能

JMX API 已增加新屬性及複合資料索引鍵 ,如下所示:

如需更多資訊,請參閱「Sun GlassFish Message Queue 4.4 Developer’s Guide for JMX Clients 」中的第 3 章「Message Queue MBean Reference」

列出萬用字元用戶的長期訂閱

列出長期訂閱的指令:

list dur [-d topicName]

已經強化,因此已經不一定要指定主題名稱。若未指定主題,該指令會列出全部主題的所有長期訂閱 (包括使用萬用字元命名慣例者)。

Message Queue 4.2 的新功能

Message Queue 4.2 是次要發行版本,包含數項新功能、一些增強功能,以及錯誤修正。本節說明 4.2 發行版本的新功能,並提供您可以使用的進一步參考資料:

如需有關 Message Queue 4.1 與 4.0 中推出之功能的資訊,請分別參閱Message Queue 4.1 的新功能Message Queue 4.0 的新功能

發佈程式或訂閱者的多個目標

發佈程式利用 Message Queue 4.2 可將訊息發佈至多個主題目標,而用戶則可使用多個主題目標的訊息。使用包含萬用字元符號的主題目標名稱即可代表多個目標,進而達成此功能。使用這類符號名稱可讓管理員視需要建立與萬用字元命名方案一致的其他主題目標。發佈程式與訂閱者會自動發佈至增加的目標,以及從增加的目標進行取用 (萬用字元主題訂閱者比發佈程式更常用)。


備註 –

此功能不會套用至佇列目標。


「Sun GlassFish Message Queue 4.4 Administration Guide」中的「Supported Topic Destination Names」會說明符號主題目標名稱格式及其使用範例。

XML 有效負載訊息的模式驗證

Message Queue 4.2 推出的此項新功能,可在將訊息傳送至代理程式時,根據 XML 模式驗證 XML 訊息的文字內容 (非物件內容)。XML 模式 (XSD) 的位置會指定為 Message Queue 目標的特性。若未指定任何 XSD 位置,則會使用 XML 文件中的 DTD 宣告,執行 DTD 驗證 (XSD 驗證包含資料類型與值範圍驗證,比 DTD 驗證嚴格)。

如需有關使用此功能的資訊,請參閱XML 有效負載訊息的模式驗證

分散式作業事件的 C-API 支援

根據 X/Open 分散式作業事件模型,分散式作業事件的支援仰賴於分散式作業事件管理程式,此管理程式會追蹤並管理一或多個資源管理程式所執行的作業。Message Queue C-API 利用 Message Queue 4.2 支援 XA 介面 (介於分散式作業事件管理程式與 Message Queue 之間,作為 XA 相容資源管理員),可讓在分散式作業事件處理環境 (如 BEA Tuxedo) 中執行的 Message Queue C-API 用戶端,參與分散式作業事件。

此分散式作業事件支援包含實作 XA 介面規格時所使用的下列 C-API 新功能 (以及新參數與錯誤碼):

MQGetXAConnection()
MQCreateXASession()

若 C 用戶端應用程式將用於分散式作業事件環境中,則必須透過使用 MQGetXAConnection() 取得連線,並透過使用 MQCreateXASession() 建立產生與使用訊息的階段作業管理所有分散式作業事件的啟動、確認與回復時,均透過分散式作業事件管理程式提供的 API。

如需使用分散式作業事件功能的詳細資訊,請參閱「Sun GlassFish Message Queue 4.4 Developer’s Guide for C Clients」中的「Working With Distributed Transactions」

Message Queue 4.2 根據 Tuxedo 作業事件管理程式提供程式設計範例。如需有關使用這些程式範例的資訊,請參閱「Sun GlassFish Message Queue 4.4 Developer’s Guide for C Clients」中的「Distributed Transaction Sample Programs」


備註 –

Solaris、Linux 及 Windows 平台都支援分散式作業事件功能,但至今僅通過 Solaris 平台認證。


Sun Connection 註冊的安裝程式支援

Message Queue 安裝程式已增強為可向 Sun Connection 註冊 Message Queue;Sun Connection 是協助您追蹤、組織及維護 Sun 軟硬體的 Sun 代管服務。

在 Message Queue 安裝過程中,可選擇是否要向 Sun Connection 註冊 Message Queue。已安裝之 Message Queue 的相關資訊 (如發行版本、主機名稱、作業系統、安裝日期及其他此類基本資訊) 會安全傳輸至 Sun Connection 資料庫。Sun Connection 資產管理服務可協助您管理 Sun 軟硬體,而更新服務則會通知您最新之可用安全性問題修正、建議更新及增強功能。

如需向 Sun Connection 註冊 Message Queue 的詳細資訊,請參閱「Sun GlassFish Message Queue 4.4 Installation Guide」

MySQL 資料庫的支援

Message Queue 4.2 推出以 MySQL 資料庫當作 JDBC 資料存放區的功能。MySQL Cluster Edition 可用作獨立代理程式的 JDBC 資料庫,以及強化之代理程式叢集所需之高可用性的共用資料存放區。如需有關配置 Message Queue 以使用 MySQL 的資訊,請參閱「Sun GlassFish Message Queue 4.4 Administration Guide」中的「Configuring a JDBC-Based Data Store」以及「Sun GlassFish Message Queue 4.4 Administration Guide」中的「Enhanced Broker Cluster Properties」

其他增強功能

Message Queue 4.2 除上述功能外,還包括下列增強功能:

Message Queue 4.1 的新功能

Message Queue 4.1 是次要發行版本,包含數項新功能、一些增強功能,以及錯誤修正。本節說明 4.1 發行版本的新功能,並提供您可以使用的進一步參考資料:

如需有關 Message Queue 4.0 中推出之功能的資訊,請參閱Message Queue 4.0 的新功能

高可用性代理程式叢集

Message Queue 4.1 推出新的強化代理程式叢集。傳統代理程式叢集僅提供訊息傳送服務可用性功能 (若代理程式失敗,可使用其他代理程式提供訊息傳送服務) ,相較之下,強化的代理程式叢集還提供資料可用性 (若代理程式失敗,其他代理程式可使用其永久性訊息與狀態資料以接管訊息傳送工作)。

Message Queue 4.1 推出的高可用性實作,使用共用的 JDBC 資料存放區:代理程式叢集中的每個代理程式沒有獨立永久資料存放區,而是由叢集中的所有代理程式共用一個 JDBC 相容資料庫。若某個特定的代理程式故障,叢集中的其他代理程式會代替故障的代理程式發送訊息。由此,容錯移轉代理程式即可使用共用資料存放區中的資料與狀態資訊。失敗之代理程式的訊息傳送用戶端會重新連線至容錯移轉代理程式,以提供不間斷的訊息傳送服務。

Message Queue 4.1 高可用性實作中所使用的共用 JDBC 存放區本身必須也具備高可用性。若沒有高度可用的資料庫,或者訊息傳送不中斷對您而言不重要,則可繼續使用傳統叢集,其提供不包含資料可用性的服務可用性。

若要配置 Message Queue 4.1 強化代理程式叢集,請為叢集中的每個代理程式指定下列代理程式特性:

若要使用強化的代理程式叢集實作,必須執行下列作業:

  1. 安裝高可用性資料庫。

  2. 安裝 JDBC 驅動程式 .jar 檔案。

  3. 為高度可用的永久資料存放區建立資料庫模式。

  4. 為叢集中的每個代理程式設定高可用性特性。

  5. 啟動叢集中的每個代理程式。

如需有關強化之代理程式叢集的概念性討論,及其與傳統叢集之比較,請參閱「Sun GlassFish Message Queue 4.4 Technical Overview」中的第 4 章「Broker Clusters」。如需有關強化代理程式叢集的逐步說明及參考資訊,請參閱「Sun GlassFish Message Queue 4.4 Administration Guide」中的第 10 章「Configuring and Managing Broker Clusters」「Sun GlassFish Message Queue 4.4 Administration Guide」中的「Cluster Configuration Properties」

若搭配 Message Queue 4.0 使用高可用性的資料庫,且想切換成強化的代理程式叢集,可使用資料庫管理者公用程式 (imqdbmgr) 轉換為共用的永久資料存放區。另請參閱代理程式叢集,以深入瞭解已知問題與限制。

JAAS 支援

除了檔案式與 LDAP 式內建認證機制之外,Message Queue 4.1 也推出 Java 認證與授權服務 (JAAS) 的支援,可讓您將外部認證機制外掛到代理程式,以認證 Message Queue 用戶端。

如需了解代理程式提供給 JAAS 相容認證服務的資訊,以及如何配置代理程式以使用此類服務的說明,請參閱「Sun GlassFish Message Queue 4.4 Administration Guide」中的「Using JAAS-Based Authentication」

永久資料存放區格式變更

Message Queue 4.1 已變更 JDBC 資料存放區,以支援強化的代理程式叢集。因此,410 版增加了 JDBC 資料存放區格式。格式版本 350、370 及 400 會自動遷移至 410 版。

請注意,由於檔案式永久資料存放區的格式沒有任何變更,因此其格式會保持為 370 版。

代理程式環境配置

Message Queue 4.1 環境配置檔案 imqenv.conf 中已增加特性 IMQ_DEFAULT_EXT_JARS。您可以設定此特性,以指定在啟動代理程式時,將外部 .jar 檔案的路徑名稱納入 CLASSPATH。若使用此特性指定外部 .jar 檔案的位置,則不再需要將這些檔案複製到 lib/ext 目錄。外部 .jar 檔案可參照 JDBC 驅動程式或 JAAS 登入模組。下列特性範例指定 JDBC 驅動程式的位置。

IMQ_DEFAULT_EXT_JARS=/opt/SUNWhadb4/lib/hadbjdbc4.jar:/opt/SUNWjavadb/derby.jar

Java ES Monitoring Framework 支援

Message Queue 4.1 推出 Sun Java Enterprise System (Java ES) Monitoring Framework 的支援,可使用共用圖形介面監視 Java ES 元件。此介面利用名為「Sun Java System Monitoring Console」的網路型主控台實作。管理員可使用 [主控台] 檢視效能統計、建立自動監視的規則,以及確認警報。若執行 Message Queue 的同時也執行其他 Java ES 元件,可能會發現使用單一介面管理所有元件比較方便。

如需有關使用 Java ES Monitoring Framework 監視 Message Queue 的資訊,請參閱 XREF。

增強的作業事件管理

在舊版中,只有處於 PREPARED 狀態的作業事件可以由管理員回復。換言之,若屬於分散式作業事件的階段作業未正常終止,作業事件將繼續處於管理員無法清除的狀態。現在於 Message Queue 4.1 中,可使用指令公用程式 (imqcmd) 清除 (回復) 下列狀態的作業事件:STARTEDFAILEDINCOMPLETECOMPLETEPREPARED

為協助您判斷是否可回復特定的作業事件 (特別是當它不為 PREPARED 狀態時),指令公用程式會提供額外的資料,作為 imqcmd query txn 輸出的一部分:它會提供啟動該作業事件的連線 ID,並明確說明作業事件的建立時間。管理員可使用此資訊,決定是否需要回復作業事件。一般說來,管理員應避免提前回復作業事件。

C 用戶端連線的固定連接埠

在 Message Queue 4.1 中,C 用戶端 (例如 Java 用戶端) 現在可連線至固定代理程式連接埠,而不是由代理程式的連接埠對映器服務動態指定的連接埠。若嘗試通過防火牆,或是若基於某些其他原因需要略過連接埠對映器服務,固定連接埠連線會很有用。

若要配置固定連接埠連線,必須同時配置代理程式與 C 用戶端執行階段 (連線的兩端)。例如,若需要透過 ssljms 將用戶端連線至連接埠 1756,請執行下列作業:


備註 –

MQ_SERVICE_PORT_PROPERTY 連線特性已向下相容至 Message Queue 3.7 Update 2。


Message Queue 4.0 的新功能

Message Queue 4.0 是僅支援 Application Server 9 PE 的次要發行版本。它包含數項新功能、一些增強功能,以及錯誤修正。本節說明此發行版本的新功能:


注意 – 注意 –

4.0 版推出的其中一個變更雖然次要,但可能造成重大改變,亦即停用以指令行指定密碼的選項。因此,您必須如已停用的密碼選項中所述,將所有密碼儲存在檔案中,或在提示時輸入密碼。


JMX 管理 API 的支援

Message Queue 4.0 中已增加符合 Java Management Extensions (JMX) 規格,且可用於配置與監視 Message Queue 代理程式的新 API。您可以使用此 API,從 Java 應用程式內以程式設計方式配置並監視代理程式功能。在 Message Queue 的舊版中,您只能從指令行管理公用程式或從 [管理主控台] 存取這些功能。

如需更多資訊,請參閱「Sun GlassFish Message Queue 4.4 Developer’s Guide for JMX Clients」

用戶端執行階段記錄

Message Queue 4.0 推出對用戶端執行階段記錄連線與階段作業相關事件的支援。

如需有關用戶端執行階段記錄以及如何加以配置的資訊,請參閱「Java Dev Guide」的第 137 頁。

連線事件通知 API

Message Queue 4.0 推出的事件通知 API,可讓用戶端執行階段通知應用程式有關連線狀態的變更。連線事件通知可讓 Message Queue 用戶端偵聽關閉事件與重新連線事件,並根據通知類型與連線狀態採取適當的動作。例如,當發生容錯移轉且用戶端重新連線至其他代理程式時,應用程式最好清除作業事件狀態,並進行新的作業事件。

如需有關連線事件以及如何建立事件偵聽程式的資訊,請參閱「Java Dev Guide」的第 96 頁。

代理程式管理增強功能

在 Message Queue 4.0 中,指令公用程式 (imqcmd) 已增加新的子指令及數個指令選項,可讓管理員靜止代理程式、在指定間隔之後關閉代理程式、銷毀連線,或設定 Java 系統特性 (例如連線相關特性)。

如需有關 imqcmd 指令的完整語法資訊,請參閱「Sun GlassFish Message Queue 4.4 Administration Guide」中的第 16 章「Command Line Reference」

顯示有關 JDBC 資料存放區的資訊

在 Message Queue 4.0 中,資料庫管理者公用程式 imqdbmgr 已新增 query 子指令。此子指令可用以顯示關於 JDBC 資料存放區的資訊,包含資料庫版本、資料庫使用者,以及是否已建立資料庫表格。

以下是該指令所顯示之資訊的範例。


imqdbmgr query

[04/Oct/2005:15:30:20 PDT] Using plugged-in persistent store:
        version=400
        brokerid=Mozart1756
        database connection url=jdbc:oracle:thin:@Xhome:1521:mqdb
        database user=scott
Running in standalone mode.
Database tables have already been created.

JDBC 提供者支援

在 Message Queue 4.0 中,現在支援 Apache Derby 10.1.1 版作為 JDBC 資料存放區提供者。

永久資料存放區格式變更

Message Queue 4.0 已變更用於最佳化與支援未來增強功能的 JDBC 資料存放區。因此,400 版增加了 JDBC 資料存放區格式。請注意,Message Queue 4.0 中的檔案資料存放區版本仍為 370,因為未對其進行任何變更。

其他訊息特性

Message Queue 4.0 增加了兩個新特性,可對置於停用訊息佇列中的所有訊息進行設定。

SSL 支援

自 Message Queue 4.0 起,用戶端連線工廠特性 imqSSLIsHostTrusted 的預設值為 false。若應用程式相依於之前的預設值 true,即需要重新配置並將特性明確設定為 true

當代理程式配置為使用自我簽署的憑證時,您可以選擇信任主機。此時,除了指定連線應使用基於 SSL 的連線服務 (使用 imqConnectionType 特性),還應該將 imqSSLIsHostTrusted 特性設定為 true。

例如,若要在代理程式使用自我簽署的憑證時安全地執行用戶端應用程式,請使用如下的指令。

java -DimqConnectionType=TLS 
      -DimqSSLIsHostTrusted=true ClientAppName

若要在代理程式使用自我簽署的憑證時安全地使用指令公用程式 (imqcmd),請使用類似如下的指令 (用於列出連接器服務)。

imqcmd list svc -secure -DimqSSLIsHostTrusted=true