Sun Java System Message Queue 3.7 UR1 管理指南

管理連線服務

imqcmd 公用程式包括允許您執行以下連線服務管理作業的子指令:

代理程式支援來自應用程式用戶端和管理用戶端的連線。目前,Message Queue 代理程式可提供的連線服務如表 5–1 中所示。如表格中所示,每種服務都與使用的服務類型 (應用程式用戶端為 NORMAL,管理用戶端為 ADMIN) 和基本傳輸協定相關。

表 5–1 Message Queue 連線服務

服務名稱 

服務類型 

協定類型

jms

NORMAL

TCP

ssljms (Enterprise Edition)

NORMAL

TLS (SSL 型安全性)

httpjms (Enterprise Edition)

NORMAL

HTTP

httpsjms (Enterprise Edition)

NORMAL

HTTPS (SSL 型安全性)

admin

ADMIN

TCP 

ssladmin (Enterprise Edition)

ADMIN

TLS (SSL 型安全性) 

您可以使用 imqcmd 子指令來管理整個連線服務,或管理個別連線服務。如果子指令的目標是個別服務,請使用 -n 選項,以表 5–1 之 [服務名稱] 欄位中所列的其中一個名稱進行指定。

列出連線服務

若要列出代理程式上可用的連線服務,請使用 list svc 子指令。

list svc 子指令的語法如下:

imqcmd list svc [-b hostName:
portNumber]

該子指令列出預設代理程式或指定主機和連接埠上的代理程式上的所有連線服務。

以下指令列出在使用連接埠 7676 localhost 上所執行代理程式的所有服務:

imqcmd list svc -u admin

此指令將輸出以下資訊:


------------------------------------------------
Service Name    Port Number        Service State
------------------------------------------------
admin           41844 (dynamic)    RUNNING
httpjms         -                  UNKNOWN
httpsjms        -                  UNKNOWN
jms             41843 (dynamic)    RUNNING
ssladmin        dynamic            UNKNOWN
ssljms          dynamic            UNKNOWN

顯示連線服務資訊

若要查詢並顯示單一服務的相關資訊,請使用 query 子指令。

query svc 子指令的語法如下:

imqcmd query svc -n serviceName [-b 
hostName:portNumber]

query svc 子指令會顯示在預設代理程式或指定主機和連接埠的代理程式上,所執行的指定服務之相關資訊。

例如:

imqcmd query svc -n jms -u admin

提示輸入密碼後,指令會輸出類似下列的內容:


Service Name                           jms
Service State                          RUNNING
Port Number                            60920 (dynamic)
                                     
Current Number of Allocated Threads    0
Current Number of Connections          0
                                     
Min Number of Threads                  10
Max Number of Threads                  1000

更新連線服務特性

您可以使用 update 子指令,變更表 5–2 中所列出的一個或多個服務特性的值。

表 5–2 imqcmd 更新的連線服務特性

特性 

說明 

port

指定給需更新之服務的連接埠 (不適用於 httpjms 或 httpsjms)。0 值表示連接埠對映器會動態配置連接埠。

minThreads

指定給服務的執行緒之最小數量。

maxThreads

指定給服務的最大執行緒數目。 

update 子指令的語法如下:

imqcmd update svc -n serviceName [-b 
hostName:portNumber] 
         -o attribute=value [-o 
attribute=value1]

該子指令更新在預設代理程式或指定主機和連接埠上的代理程式上執行的指定服務的指定屬性。如需服務屬性的描述,請參閱連線特性

以下指令將指定給 jms 服務的執行緒最小數目變更為 20。

imqcmd update svc -n jms -o “minThreads=20” -u admin

顯示連線服務度量

若要顯示有關單一服務的度量資訊,請使用 metrics 子指令。

metrics 子指令的語法如下:

imqcmd metrics svc -n serviceName [-b 
hostName:portNumber] [-m metricType
]
     [-int interval] [-msp numSamples]

該子指令顯示預設代理程式或指定主機和連接埠上的代理程式上的指定服務之度量。

使用 -m 選項指定要顯示的度量類型:

使用 -int 選項,指定顯示度量的時間間隔 (以秒為單位)。預設為 5 秒鐘。

使用 -msp 選項,指定輸出中顯示的範例數目。預設的數目為沒有限制 (無限)。

例如,若要取得由 jms 連線服務處理的訊息和資料封包等累計總數,請使用:

imqcmd metrics svc -n jms -m ttl -u admin

提示輸入密碼後,指令會輸出類似下列的內容:


-------------------------------------------------
  Msgs      Msg Bytes      Pkts      Pkt Bytes   
In   Out    In     Out   In   Out    In     Out  
-------------------------------------------------
164  100  120704  73600  282  383  135967  102127
657  100  483552  73600  775  876  498815  149948

如需有關使用 imqcmd 以報告連線服務度量的更多詳細描述,請參閱連線服務度量

暫停和重新繼續連線服務

除 admin 服務無法暫停之外,若要暫停其他任何服務,請使用 pause svcresume svc 子指令。

pause svc 子指令的語法如下:

imqcmd pause svc -n serviceName [-b 
hostName:portNumber]

該子指令暫停在預設代理程式或指定主機和連接埠上代理程式執行的指定服務。 例如,下列指令會暫停預設代理程式上執行的 httpjms 服務。

imqcmd pause svc -n httpjms -u admin

暫停服務會造成以下影響:

若要重新繼續服務,請使用 resume svc 子指令。

resume svc 子指令的語法如下:

imqcmd resume svc -n serviceName[-b 
hostName:portNumber]

該子指令會重新繼續在預設代理程式或指定主機和連接埠上代理程式執行的指定服務。