maxNumMsgs [ 在叢集環境中,會套用至目標的各個實例,而非整體套用至叢集中的所有實例]
|
整數
|
-1
|
未使用訊息的最大數目
-1 值表示不限制訊息數目。
對於停用的訊息佇列,預設值是 1000。
|
maxBytesPerMsg
|
字串
|
-1
|
任何單一訊息的最大容量 (以位元組為單位)
若永久性訊息被拒絕,就會對訊息產生用戶端報告發生異常;若為非永久性訊息,則不會傳送通知。
|
|
|
|
此值可能會使用下列字尾,以位元組、千位元組或百萬位元組表示:
b:位元組
k:千位元組 (1024 位元組)
m:百萬位元組 (1024 × 1024 = 1,048,576 位元組)
|
|
|
|
無字尾的值是以位元組表示;-1 值表示不限制訊息容量。
|
|
|
|
範例:
1600:1600 位元組
1600b:1600 位元組
16k:16 千位元組 (= 16,384 位元組)
16m:16 百萬位元組 (= 16,777,216 位元組)
-1:不限制
|
maxTotalMsgBytes
|
字串
|
-1
|
未使用訊息的最大總記憶體容量 (以位元組為單位)
語法與 maxBytesPerMsg 相同 (請參閱前述內容)。
對於停用的訊息佇列,預設值是 10m。
|
limitBehavior
|
字串
|
REJECT_NEWEST
|
達到記憶體限制臨界值時的代理程式運作方式:
FLOW_CONTROL:減緩產生器速度
REMOVE_OLDEST:捨棄最舊的訊息
REMOVE_LOW_PRIORITY:根據訊息存在時間,捨棄優先權最低的訊息;不會對訊息產生用戶端傳送通知
REJECT_NEWEST:拒絕最新的訊息;只有當訊息為永久性訊息時,才通知訊息產生用戶端發生異常
|
|
|
|
如果值為 REMOVE_OLDEST 或 REMOVE_LOW_PRIORITY ,而且 useDMQ 特性為 true,超過限制的訊息就會移至停用的訊息佇列。對於停用的訊息佇列本身,預設的限制運作方式是 REMOVE_OLDEST,而且無法設為 FLOW_CONTROL。
|
maxNumProducers [無法針對停用的訊息佇列進行設定]
|
整數
|
-1
|
目標的最大訊息產生器數目
達到限制時,將無法建立新的產生器。-1 值表示不限制產生器數目。
|
maxNumActiveConsumers [僅限佇列目標]
|
整數
|
1
|
從佇列目標進行負載平衡傳送時,使用中訊息用戶的最大數目
-1 值表示不限制用戶數目。在 Sun Java System Message QueueTM Platform Edition 中,此值會限制為 2。
|
maxNumBackupConsumers
|
整數
|
0
|
從佇列目標進行負載平衡傳送時,備份訊息用戶的最大數目
-1 值表示不限制用戶數目。在 Sun Java System Message Queue Platform Edition 中,此值會限制為 1。
|
consumerFlowLimit
|
整數
|
1000
|
單一批次中傳送給用戶的最大訊息數目
在負載平衡佇列傳送中,此數目是開始進行負載平衡前,路由到使用中用戶的佇列訊息初始數目。目標用戶可以在連線上指定較低的值來置換這項限制。
-1 值表示不限制訊息數目。
|
isLocalOnly
|
布林值
|
false
|
僅限本機傳送?
此特性僅適用於代理程式叢集的目標,而且目標一經建立之後便無法變更。如果為 true,則目標不會被複製到其他代理程式上,並且只會傳送訊息給本機用戶 (即連線至建立該目標之代理程式的用戶)。
|
localDeliveryPreferred ,
|
布林值
|
false
|
偏好本機傳送?
此特性僅適用於代理程式叢集中的負載平衡佇列傳送。如果為 true,則只有當本機代理程式上沒有用戶時,才會將訊息傳送給遠端用戶;目標不可設定為僅限於本機傳送 (即 isLocalOnly 必須為 false)。
|
useDMQ
|
布林值
|
true
|
要將停用的訊息傳送給停用的訊息佇列?
如果為 false,停用的訊息將會被捨棄。
|