Sun Java System Message Queue 3.7 UR1 管理指南

實體目標特性

表 15–1 實體目標特性

特性 

類型 

預設 

說明 

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_OLDESTREMOVE_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,停用的訊息將會被捨棄。