![]() | |
Sun Java System Message Queue 3 2005Q4 管理指南 |
第 14 章
代理程式特性參照本章提供有關訊息代理程式配置特性的參照資訊。它包含下列各節:
連線特性表 14-1 列出與連線服務相關的代理程式特性。
表 14-1 代理程式連線特性
特性
類型
預設
說明
imq.service.activelist
字串
jms,admin
以逗號分隔要在啟動代理程式時啟動的連線服務清單
imq.hostname
字串
所有可用 IP 位址
所有連線服務的預設主機名稱或 IP 位址
imq.portmapper.hostname
字串
無
連接埠對映器的主機名稱或 IP 位址
如果指定,會覆寫 imq.hostname
imq.portmapper.port1
整數
7676
連接埠對映器的連接埠號碼
備註:如果在同一台主機上執行多個代理程式實例,則每一個實例都必須指定唯一的連接埠對映器連接埠。
imq.serviceName.protocolType.hostname
字串
無
連線服務的主機名稱或 IP 位址2
如果指定,會覆寫所指定連線服務的 imq.hostname
imq.serviceName.protocolType.port
整數
0
連線服務的連接埠號碼2
0 值會指定連接埠對映器應動態配置的連接埠號碼。
imq.portmapper.backlog
整數
50
作業系統儲存區中的最大擱置連接埠對映器請求數
imq.serviceName.threadpool_model
字串
dedicated
執行緒池管理的執行緒模型:
dedicated 每個連線有兩個專屬執行緒,
一個供內送訊息使用,另一個
供外寄訊息使用shared3 傳送或接收訊息時,
由共用執行緒處理的連線專屬模型會限制所能支援的連線數目,但可以提供較高的效能;共用模型可增加連線數目,但因為需要額外的耗用時間進行執行緒管理,所以效能較低。
imq.serviceName.min_threads
整數
jms: 10
ssljms: 10
httpjms: 10
httpsjms:10
admin: 4
ssladmin: 4連線服務的執行緒池中所維護的最小執行緒數
當可用的執行緒數超過此臨界值時,將會在執行緒成為自由執行緒時將其關閉,直到達到最小數目的臨界值為止。
如其所示,預設值因連線服務而異。
imq.serviceName.max_threads
整數
jms: 1000
ssljms: 500
httpjms: 500
httpsjms:500
admin: 10
ssladmin: 10執行緒數目,一旦超過指定數目,系統便不會將新的執行緒新增至執行緒池,供已命名的連線服務使用。此數目必須大於零,並且其值必須大於 min_threads 的值。
如其所示,預設值因連線服務而異。
imq.shared.connectionMonitor_limit
整數
Solaris:512
Linux:512
Windows:64由分散執行緒監視的最大連線數目4
系統配置了足夠的分散執行緒以監視所有連線。此特性的值愈小,將執行緒指定給使用中連線的速度愈快。-1 值表示不限制每個執行緒的連線數目。
如其所示,預設值因作業系統平台而異。
imq.ping.interval
整數
120
測試用戶端與代理程式間連線的間隔 (以秒為單位)
0 或 -1 值可停用有規律的連線測試。
1 可與 imqcmd update bkr 指令一起使用
2 僅 jms、ssljms、admin 與 ssladmin 服務;請參閱附錄 C「HTTP/HTTPS 支援」以取得更多有關配置 httpjms 與 httpsjms 服務的資訊
3 僅限 jms 與 admin 服務
4 僅限共用執行緒模型
路由特性表 14-2 列出與路由服務相關的代理程式特性。可配置自動建立目標的特性列於表 14-3。
表 14-2 代理程式路由特性
特性
類型
預設
說明
imq.system.max_count1
整數
-1
代理程式保留訊息的最大數目
-1 值表示不限制訊息計數。
imq.system.max_size1
字串
-1
代理程式保留訊息的最大總容量
此值可能會使用下列字尾,以位元組、千位元組或百萬位元組表示:
b 位元組
k 千位元組 (1024 位元組)
m 百萬位元組 (1024 x 1024= 1,048,576 位元組)無字尾的值表示以位元組為單位;-1 值表示不限制訊息容量。
範例:
1600 1600 位元組
1600b 1600 位元組
16k 16 千位元組 (= 16,384 位元組)
16m 16 百萬位元組 (= 16,777,216 位元組)
-1 不限制imq.message.max_size1
字串
70m
單一訊息內文的最大容量
語法與 imq.system.max_size 相同 (請參閱前述)。
imq.message.expiration.interval
整數
60
收回過期訊息的間隔 (以秒為單位)
imq.resourceState.threshold
整數
green: 0
yellow: 80
orange: 90
red: 98
啟動每種記憶體資源狀態時的記憶體用量百分比
(其中 resourceState 為 green、yellow、orange 或 red)imq.resourceState.count
整數
green:5000
yellow:500
orange: 50
red: 0
檢查記憶體是否已達到資源狀態臨界值之前,批次中可有的最大內送訊息數目 (其中 resourceState 是 green、yellow、orange 或 red)
系統記憶體變得逐漸不足時,此限制會減低訊息產生者。
imq.destination.DMQ.truncateBody1
布林
false
儲存在停用訊息佇列之前,先移除訊息內文?
如果為 true,將只會儲存訊息標頭與特性資料。
imq.transaction.autorollback
布林
false
要在代理程式啟動時,自動回轉準備狀態中遺留下的分散式作業事件?
如果為 false,您必須使用指令公用程式 (imqcmd),手動確定或回轉作業事件。
1 可與 imqcmd update bkr 指令一起使用
表 14-3 自動建立目標的代理程式特性
特性
類型
預設
說明
布林
true
允許自動建立佇列目標?
imq.autocreate.topic3
布林
true
允許自動建立主題目標?
imq.autocreate.destination.maxNumMsgs
整數
100000
未使用訊息的最大數目
-1 值表示不限制訊息數目。
imq.autocreate.destination.maxBytesPerMsg
字串
10k
任何單一訊息的最大容量 (以位元組為單位)
此值可能會使用下列字尾,以位元組、千位元組或百萬位元組表示:
b 位元組
k 千位元組 (1024 位元組)
m 百萬位元組 (1024 x 1024
= 1,048,576 位元組)無字尾的值會以位元組表示;-1 值表示不限制訊息容量。
範例:
1600 1600 位元組
1600b 1600 位元組
16k 16 千位元組
(= 16,384 位元組)
16m 16 百萬位元組
(= 16,777,216 位元組)
-1 不限制imq.autocreate.destination.maxTotalMsgBytes
字串
10m
未使用訊息的最大總記憶體容量
(以位元組為單位)語法與 imq.autocreate.destination.
maxBytesPerMsg 相同 (請參閱前述)。imq.autocreate.destination.limitBehavior
字串
REJECT_NEWEST
達到記憶體限制臨界值時的代理程式運作方式:
FLOW_CONTROL
減緩產生者速度REMOVE_OLDEST
捨棄最舊的訊息REMOVE_LOW_PRIORITY
根據訊息存在時間,
捨棄優先權最低的
訊息;不會對生產型用戶端傳送
通知REJECT_NEWEST
拒絕最新的訊息;
只有當訊息為永久性時,
才通知生產型用戶端
發生異常如果值為 REMOVE_OLDEST 或 REMOVE_LOW_PRIORITY,而且 imq.autocreate.destination.
useDMQ 特性為 true,則超過限制的訊息就會移至停用的訊息佇列。imq.autocreate.destination.maxNumProducers
整數
100
目標的最大訊息產生者數目
達到限制時,將無法建立新的產生者。-1 值表示不限制產生者數目。
imq.autocreate.queue.maxNumActiveConsumers2
整數
1
來自佇列目標的負載平衡佇列傳送內,最大的使用中訊息用戶數目
-1 值表示不限制用戶數目。
imq.autocreate.queue.maxNumBackupConsumers2
整數
0
來自佇列目標的負載平衡佇列傳送內,最大的備份訊息用戶數目
-1 值表示不限制用戶數目。
imq.autocreate.queue.consumerFlowLimit2
整數
1000
單一批次中傳送給佇列用戶的最大訊息數目
在負載平衡佇列傳送中,負載平衡開始前,此數目是路由到使用中用戶的佇列訊息初始數目。目標用戶可以在連線上指定較低值,覆寫這項限制。
-1 值表示不限制用戶數目。
imq.autocreate.topic.consumerFlowLimit3
整數
1000
單一批次中傳送給主題用戶的最大訊息數目
-1 值表示不限制用戶數目。
imq.autocreate.destination.isLocalOnly
布林
false
僅限本機傳送?
此特性僅適用於代理程式叢集,而且目標一經建立之後便無法變更。如果為 true,則其他代理程式上不會重複實體目標,且限制目標僅會傳送訊息給本機用戶 (會連線至建立目標的代理程式)。
imq.autocreate.queue.localDeliveryPreferred2
布林
false
偏好本機傳送?
此特性僅適用於代理程式叢集中的負載平衡佇列傳送。如果為 true,只有當本機代理程式上沒有用戶時,才會將訊息傳送給遠端用戶;目標絕不可僅限於本機傳送 (imq.autocreate.destination.
isLocalOnly 必須為 false)。imq.autocreate.destination.useDMQ
布林
true
要將停用訊息傳送給停用訊息佇列?
如果為 false,停用訊息將會被捨棄。
1 可與 imqcmd update bkr 指令一起使用
2 僅限佇列目標
3 僅限主題目標
永久性特性Message Queue 支援永久性資料存放區的檔案型與 JDBC 型模型。代理程式特性 imq.persist.store (表 14-4) 可指定要使用哪種模型。以下各節描述兩種模型的代理程式配置特性。
檔案型永久性
表 14-5 列出與檔案型永久性相關的代理程式特性。
JDBC 型永久性
表 14-6 列出與 JDBC 型永久性相關的代理程式特性。所示範例為 DataMirror Mobile Solutions, Inc. 資料庫產品的 PointBase® 系列。
安全性特性表 14-7 列出與安全性服務相關的代理程式特性。
表 14-7 代理程式安全性特性
特性
類型
預設
說明
imq.accesscontrol.enabled
布林
true
使用存取控制?
如果為 true,系統將會檢查存取控制特性檔,以驗證已授權認證使用者使用連線服務,或執行與特定目標相關的特定作業。
imq.serviceName.accesscontrol.enabled
布林
無
要使用連線服務的存取控制?
如果指定,會覆寫指定連線服務的 imq.accesscontrol.
enabled。如果為 true,系統將會檢查存取控制特性檔,以驗證已授權認證使用者使用所指定的連線服務,或執行與特定目標相關的特定作業。
imq.accesscontrol.file.filename
字串
accesscontrol.properties
存取控制特性檔的名稱
檔案名稱會指定與存取控制目錄相關的路徑
(請參閱附錄 A)。imq.serviceName.accesscontrol.file.filename
字串
無
連線服務的存取控制特性檔名稱
如果指定,會覆寫指定連線服務的 imq.accesscontrol.
file.filename。檔案名稱可指定與存取控制目錄相關的路徑
(請參閱附錄 A)。imq.authentication.type
字串
digest
密碼編碼方法:
basic Base-64
digest MD5imq.serviceName.authentication.type
字串
無
連線服務的密碼編碼方法:
basic Base-64
digest MD5如果指定,會覆寫指定連線服務的 imq.authentication.
type。imq.authentication.basic.user_repository
字串
file
Base-64 認證的使用者儲存庫類型:
file 檔案型
ldap LDAPimq.authentication.client.response.timeout
整數
180
等待用戶端回應認證請求的間隔 (以秒為單位)
imq.passfile.enabled
布林
false
要從密碼檔取得密碼嗎?
imq.passfile.dirpath
字串
請參閱附錄 A
前往包含密碼檔的路徑
imq.passfile.name
字串
密碼檔案
密碼檔名稱
imq.imqcmd.password
字串
無
管理使用者的密碼
指令公用程式 (imqcmd) 可使用此密碼,在執行指令之前認證該使用者。
imq.user_repository.ldap.server
字串
無
LDAP 伺服器的主機名稱與連接埠號碼
值的格式為
hostName:port
其中 hostName 是執行 LDAP 伺服器的主機所擁有的完全合格 DNS 名稱,而 port 是該伺服器使用的連接埠號碼。
若要指定容錯移轉伺服器的清單,請使用下列語法:
host1:port1
ldap://host2:port2
ldap://host3:port3
...清單中的項目以空格分開。請注意,每個容錯移轉伺服器位址都會以 ldap:// 開頭。即使您使用 SSL 並且將特性 imq.user_repository.ldap.ssl.enabled 設定為 true,也請使用此格式。您不需要在位址中指定 ldaps。
imq.user_repository.ldap.principal
字串
無
連結至 LDAP 使用者儲存庫的辨別名稱
如果 LDAP 伺服器允許匿名搜尋,則不需要。
imq.user_repository.ldap.password
字串
無
連結至 LDAP 使用者儲存庫的密碼
如果 LDAP 伺服器允許匿名搜尋,則不需要。
此特性應只在密碼檔中指定。
imq.user_repository.ldap.propertyName
敬請期待
敬請期待
敬請期待
imq.user_repository.ldap.base
字串
無
LDAP 使用者項目的目錄基底
imq.user_repository.ldap.uidattr
字串
無
LDAP 使用者名稱的提供者特有屬性識別碼
imq.user_repository.ldap.usrfilter
字串
無
(可選擇) LDAP 使用者搜尋的 JNDI 篩選器
imq.user_repository.ldap.grpsearch
布林
false
要啟用 LDAP 群組搜尋?
備註:Message Queue 不支援巢式群組。
imq.user_repository.ldap.grpbase
字串
無
LDAP 群組項目的目錄基底
imq.user_repository.ldap.gidattr
字串
無
LDAP 群組名稱的提供者特有屬性識別碼
imq.user_repository.ldap.memattr
字串
無
LDAP 群組中使用者名稱的提供者特有屬性識別碼
imq.user_repository.ldap.grpfilter
字串
無
(可選擇) LDAP 群組搜尋的 JNDI 篩選器
imq.user_repository.ldap.timeout
整數
280
LDAP 搜尋的時間限制 (以秒為單位)
imq.user_repository.ldap.ssl.enabled
布林
false
要使用 SSL 與 LDAP 伺服器進行通訊?
imq.keystore.file.dirpath
字串
請參閱附錄 A
前往包含金鑰存放區檔案的路徑
imq.keystore.file.name
字串
金鑰存放區
金鑰存放區檔的名稱
imq.keystore.password
字串
無
金鑰存放區檔的密碼
此特性只能在密碼檔中指定。
imq.audit.enabled
布林
false
要啟動代理程式記錄檔的稽核記錄功能?
此選項只適用於 Message Queue Enterprise Edition。
檢視特性表 14-8 列出與監視服務相關的代理程式特性。
表 14-8 代理程式監視特性
特性
類型
預設
說明
imq.log.level1
字串
INFO
記錄層級
指定可寫入至輸出通道的記錄資訊種類。由高至低的值為:
ERROR
WARNING
INFO每個層級都包含高於它的層級 (例如 WARNING 會包含 ERROR)。
imq.destination.logDeadMsgs1
布林
false
要記錄有關停用訊息的資訊?
如果為 true,將會記錄以下事件:
imq.log.console.stream
字串
ERR
主控台輸出的目標:
OUT stdout
ERR stderrimq.log.console.output
字串
ERROR|WARNING
要寫入至主控台的記錄資訊種類:
NONE
ERROR
WARNING
INFO
ALLERROR、WARNING 與 INFO 種類並不包含它們之上的層級,因此必要時必須明確地加以指定。可用豎條 (|) 分隔,指定任意種類組合。
imq.log.file.dirpath
字串
請參閱附錄 A
前往包含記錄檔的路徑
imq.log.file.filename
字串
log.txt
記錄檔名稱
imq.log.file.output
字串
ALL
要寫入至記錄檔的記錄資訊種類:
NONE
ERROR
WARNING
INFO
ALLERROR、WARNING 與 INFO 種類並不包含它們之上的層級,因此必要時必須明確地加以指定。可用豎條 (|) 分隔,指定任意種類組合。
imq.log.file.rolloverbytes1
整數
-1
將輸出自動重建至新記錄檔的檔案長度 (以位元組為單位)
-1 值表示不限制位元組數目 (不會根據檔案長度進行自動重建)。
imq.log.file.rolloversecs1
整數
604800(一週)
將輸出自動重建至新記錄檔時,此檔案的存在時間 (以秒為單位)
-1 值表示不限制秒數 (不會根據檔案存在時間進行自動重建)。
imq.log.syslog.output2
字串
ERROR
要寫入至 syslogd(1M) 的記錄資訊種類:
NONE
ERROR
WARNING
INFO
ALLERROR、WARNING 與 INFO 種類並不包含它們之上的層級,因此必要時必須明確地加以指定。可用豎條 (|) 分隔,指定任意種類組合。
imq.log.syslog.facility2
字串
LOG_DAEMON
記錄訊息的 syslog 設備
可能的值對應 syslog(3C) 線上援助頁上所列出的值。用於 Message Queue 的適當值包括:
LOG_USER
LOG_DAEMON
LOG_LOCAL0
LOG_LOCAL1
LOG_LOCAL2
LOG_LOCAL3
LOG_LOCAL4
LOG_LOCAL5
LOG_LOCAL6
LOG_LOCAL7imq.log.syslog.identity2
字串
imqbrokerd_${imq.instanceName}
要在記錄至 syslog 的所有訊息前面放置的識別字串
imq.log.syslog.logpid2
布林
true
同時記錄代理程式處理 ID 與訊息?
imq.log.syslog.logconsole2
布林
false
如果無法將訊息傳送至 syslog,便將它們寫入至系統主控台?
imq.log.timezone
字串
本地時區
記錄時間戳記的時區。
這些值會與 java.util.TimeZone.getTimeZone 方法使用的值相同。範例:
GMT
GMT-8:00
美國/洛杉磯
歐洲/羅馬
亞洲/東京imq.metrics.enabled
布林
true
啟用將度量資訊寫入至記錄程式的功能?
不會影響度量訊息的產生 (由 imq.metrics.topic.enabled
控制)。imq.metrics.interval
整數
-1
將度量資訊寫入至記錄程式的時間間隔 (以秒為單位)
不會影響產生度量訊息的時間間隔
(由 imq.metrics.topic.enabled 控制)。-1 值表示無限期 (永不將度量資訊寫入至記錄程式)。
imq.metrics.topic.enabled
布林
true
要啟用將產生的度量訊息寫入至度量主題目標的功能?
如果為 false,則會產生一個用戶端異常,表示嘗試指向度量主題目標。
imq.metrics.topic.interval
整數
60
要將產生的度量訊息寫入至度量主題目標的時間間隔 (以秒為單位)
imq.metrics.topic.persist
布林
false
要將度量訊息傳送至永久性的度量主題目標?
imq.metrics.topic.timetolive
整數
300
要將度量訊息傳送到度量主題目標的使用期限 (以秒為單位)
1 可與 imqcmd update bkr 指令一起使用
2 僅限 Solaris 平台
叢集配置特性表 14-9 列出與代理程式叢集相關的配置特性。
表 14-9 叢集配置的代理程式特性
特性
類型
預設
說明
imq.cluster.brokerlist1
字串
無
代理程式位址的清單
此清單由以逗號分隔的一個或多個位址組成。每個位址都可指出叢集中代理程式的主機名稱與連接埠對映器連接埠號碼,使用的格式為 hostName:portNumber。範例︰
host1:3000,host2:8000,ctrlhost
imq.cluster.hostname2
字串
無
叢集連線服務的主機名稱或 IP 位址
如果指定,會覆寫叢集連線服務的 imq.hostname (請參閱表 14-1)
imq.cluster.port2
整數
0
叢集連線服務的連接埠號碼
0 值指定連接埠對映器應動態配置連接埠號。
imq.cluster.transport1
字串
tcp
叢集連線服務的網路傳輸協定
為了在代理程式之間安全傳送加密訊息,請將此特性設定為 ssl。
字串
無
叢集配置檔案的 URL (若有)
範例:
http://webserver/imq/cluster.properties
(Web 伺服器上的檔案)
file:/net/mfsserver/imq/cluster.properties
(共用磁碟機上的檔案)
imq.cluster.masterbroker1
字串
無
叢集主代理程式的主機名稱和連接埠號碼 (若有)
值的格式是 hostName:portNumber,其中 hostName 是主代理程式的主機名稱,portNumber 是它的連接埠對映器連接埠號碼。範例︰
ctrlhost:7676
1 叢集中所有代理程式的值必須相同
2 可以為叢集中的每個代理程式個別指定
3 可與 imqcmd update bkr 指令一起使用
按字母順序排列的代理程式特性清單表 14-10 是按字母順序排列的代理程式配置特性清單,可與本章中的相關表格相互參照。