本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon MQ 子元素屬性
以下是子元素屬性的詳細說明。如需詳細資訊,請參閱 Apache ActiveMQ 文件中的XML組態
authorizationEntry
authorizationEntry
是 authorizationEntries
子集合元素的子項。
Attributes
管理|讀取|寫入
授予使用者群組的許可。如需詳細資訊,請參閱一律設定授權映射。
如果您指定的授權映射不包含 activemq-webconsole
群組,您便無法使用 ActiveMQ Web 主控台,因為該群組未獲授權傳送或接收來自 Amazon MQ 代理程式的訊息。
預設:null
範例組態
<authorizationPlugin> <map> <authorizationMap> <authorizationEntries> <authorizationEntry admin="admins,activemq-webconsole" read="admins,users,activemq-webconsole" write="admins,activemq-webconsole" queue=">"/> <authorizationEntry admin="admins,activemq-webconsole" read="admins,users,activemq-webconsole" write="admins,activemq-webconsole" topic=">"/> </authorizationEntries> </authorizationMap> </map> </authorizationPlugin>
注意
Amazon MQ 上 ActiveMQ 中的activemq-webconsole
群組具有所有佇列和主題的管理員許可。此群組中的所有使用者都將擁有管理員存取權。
networkConnector
networkConnector
是 networkConnectors
子集合元素的子項。
Attributes
conduitSubscriptions
指定代理程式網路中的網路連線,是否將訂閱同一個目的地的多個使用者視為一個使用者。例如,如果 conduitSubscriptions
設定為 true
,有兩個使用者連線到代理程式 B,並且從目的地使用,則代理程式 B 會透過網路連線,將這些訂閱合併為邏輯上對代理程式 A 的單一訂閱,因此只有一份訊息會從代理程式 A 轉傳到代理程式 B。
注意
將 conduitSubscriptions
設定為 true
可減少重複的網路流量。不過,使用此屬性可能會影響跨消費者的訊息負載平衡,並在特定情況下 (例如,使用JMS訊息選取器或持久性主題) 可能導致行為不正確。
預設:true
雙工
指定代理程式網路中的連線,是否用來產生和使用訊息。例如,如果代理程式 A 以非雙工模式建立至代理程式 B 的連線,則訊息只能從代理程式 A 轉傳到代理程式 B。不過,如果代理程式 A 建立至代理程式 B 的雙工連線,則代理程式 B 可以將訊息轉傳給代理程式 A,而不需設定 <networkConnector>
。
預設:false
name
代理程式網路中橋接器的名稱。
預設:bridge
uri
在代理程式網路中,適用於兩個代理程式其中之一 (或多個代理程式) 的線路通訊協定端點。
預設:null
使用者名稱
代理程式網路內代理程式共同的使用者名稱。
預設:null
範例組態
注意
使用 networkConnector
來定義代理程式網路時,請不要包含代理程式共同使用者的密碼。
包含兩個代理程式的代理程式網路
使用此組態時,兩個代理程式會在代理程式網路中互連。網路連接器的名稱為 connector_1_to_2
,代理程式常用的使用者名稱為 myCommonUser
,連線為 duplex
, OpenWire 端點前面URI為 static:
,表示代理程式之間有 one-to-one 連線。
<networkConnectors> <networkConnector name="connector_1_to_2" userName="myCommonUser" duplex="true" uri="static:(ssl://b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-east-2.amazonaws.com:61617)"/> </networkConnectors>
如需詳細資訊,請參閱Configure Network Connectors for Your Broker。
包含多個代理程式的代理程式網路
使用此組態時,多個代理程式會在代理程式網路中互連。網路連接器的名稱為 connector_1_to_2
,代理程式常用的使用者名稱為 myCommonUser
,連線為 duplex
,端點以逗號分隔的 OpenWire清單以 URIs開頭masterslave:
,表示代理程式之間的容錯移轉連線。代理程式之間的容錯移轉並非隨機進行,而且會無限期地持續重新嘗試連線。
<networkConnectors> <networkConnector name="connector_1_to_2" userName="myCommonUser" duplex="true" uri="masterslave:(ssl://b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9-1.mq.us-east-2.amazonaws.com:61617, ssl://b-9876l5k4-32ji-109h-8gfe-7d65c4b132a1-2.mq.us-east-2.amazonaws.com:61617)"/> </networkConnectors>
注意
我們建議針對代理程式網路使用 masterslave:
前綴。此前綴與更明確的 static:failover:()?randomize=false&maxReconnectAttempts=0
語法相同。
注意
此XML組態不允許空格。
kahaDB
kahaDB
是 persistenceAdapter
子集合元素的子項。
Attributes
concurrentStoreAndDispatchQueues
指定是否針對佇列使用並行儲存與調配。如需詳細資訊,請參閱對於具有緩慢消費者的佇列,停用並行存放和分派。
預設:true
cleanupOnStop
支援於
Apache ActiveMQ 15.16.x 及更新版本
若已停用,廢棄項目收集和清理就不會發生在代理程式停止時,這會加快關機程序。在大型資料庫或排程器資料庫的情況下,提高速度非常有用。
預設:true
journalDiskSync間隔
若為 journalDiskSyncStrategy=periodic
,要在何時執行磁碟同步的間隔 (毫秒)。如需詳細資訊,請參閱 Apache ActiveMQ kahaDB 文件
預設:1000
journalDiskSync策略
支援於
Apache ActiveMQ 15.14.x 及更高版本
設定磁碟同步政策。如需詳細資訊,請參閱 Apache ActiveMQ kahaDB 文件
預設:always
注意
ActiveMQ 文件journalDiskSyncInterval
的持續時間,其預設值為 1 秒。資料遺失的時間長度可大於此間隔,但很難保持精確。請謹慎使用。
preallocationStrategy
設定代理程式將如何嘗試在需要新日誌檔案時,預先配置日誌檔案。如需詳細資訊,請參閱 Apache ActiveMQ kahaDB 文件
預設:sparse_file
範例組態
<broker xmlns="http://activemq.apache.org/schema/core"> <persistenceAdapter> <kahaDB preallocationStrategy="zeros" concurrentStoreAndDispatchQueues="false" journalDiskSyncInterval="10000" journalDiskSyncStrategy="periodic"/> </persistenceAdapter> </broker>
systemUsage
systemUsage
是 systemUsage
子集合元素的子項。它可控制代理程式在減慢生產者速度前將使用的空間量上限。如需詳細資訊,請參閱 Apache ActiveMQ 文件中的生產者流程控制
子元素
memoryUsage
memoryUsage
是 systemUsage
子元素的子項。它可管理記憶體用量。使用 memoryUsage
追蹤某個項目的使用量,以便發揮生產力來控制工作集用量。如需詳細資訊,請參閱 Apache ActiveMQ 中的結構描述
子元素
memoryUsage
是 memoryUsage
子元素的子項。
屬性
percentOfJvm堆積
介於 0 (包含在內) 到 70 (不包含在內) 之間的整數。
預設:70
Attributes
sendFailIfNoSpace
設定在沒有可用空間的情況下 send()
方法是否應失敗。預設值為 false,這會封鎖 send()
方法,直到有空間可用為止。如需詳細資訊,請參閱 Apache Active MQ 中的結構描述
預設:false
sendFailIfNoSpaceAfterTimeout
預設:null
範例組態
<broker xmlns="http://activemq.apache.org/schema/core"> <systemUsage> <systemUsage sendFailIfNoSpace="true" sendFailIfNoSpaceAfterTimeout="2000"> <memoryUsage> <memoryUsage percentOfJvmHeap="60" /> </memoryUsage>> </systemUsage> </systemUsage> </broker> </persistenceAdapter>