第7章 リソースの制限およびポリシー

リソース制限およびポリシーを定義して、ブローカーインスタンスがメッセージを処理する方法に関する重要な側面を制御できます。AMQ Broker 7 でこれらのリソース制限およびポリシーを設定するプロセスは AMQ 6 とは異なり、設定プロパティーの多くが変更になりました。

7.1. リソース制限およびポリシーの設定方法

AMQ 6 では、リソースの制限およびポリシーはブローカーの設定ファイルで宛先ポリシーとして設定されていました。

AMQ Broker 7 では、アドレスまたはアドレスの セット のリソース制限およびポリシーを定義します。ブローカーインスタンスがメッセージを受信すると、メッセージのアドレスに定義されたリソース制限およびポリシーがメッセージに適用されます。

AMQ Broker 7 でリソース制限およびポリシーを設定するには、BROKER_INSTANCE_DIR/etc/broker.xml 設定ファイルを使用して適切な設定プロパティーで <address-setting> 要素を定義します。

broker.xml 設定ファイルには、以下のデフォルトアドレス設定が含まれます。

<address-settings>
    <!-- if you define auto-create on certain queues, management has to be auto-create -->
    <address-setting match="activemq.management#"> 1
        <dead-letter-address>DLQ</dead-letter-address>
        <expiry-address>ExpiryQueue</expiry-address>
        <redelivery-delay>0</redelivery-delay>
        <!-- with -1 only the global-max-size is in use for limiting -->
        <max-size-bytes>-1</max-size-bytes>
        <message-counter-history-day-limit>10</message-counter-history-day-limit>
        <address-full-policy>PAGE</address-full-policy>
        <auto-create-queues>true</auto-create-queues>
        <auto-create-addresses>true</auto-create-addresses>
        <auto-create-jms-queues>true</auto-create-jms-queues>
        <auto-create-jms-topics>true</auto-create-jms-topics>
    </address-setting>
    <!--default for catch all-->
    <address-setting match="#"> 2
        <dead-letter-address>DLQ</dead-letter-address>
        <expiry-address>ExpiryQueue</expiry-address>
        <redelivery-delay>0</redelivery-delay>
        <!-- with -1 only the global-max-size is in use for limiting -->
        <max-size-bytes>-1</max-size-bytes>
        <message-counter-history-day-limit>10</message-counter-history-day-limit>
        <address-full-policy>PAGE</address-full-policy>
        <auto-create-queues>true</auto-create-queues>
        <auto-create-addresses>true</auto-create-addresses>
        <auto-create-jms-queues>true</auto-create-jms-queues>
        <auto-create-jms-topics>true</auto-create-jms-topics>
    </address-setting>
</address-settings>
1
デフォルトの管理アドレス設定。ネストされたリソース制限およびポリシーは、activemq.management# にマッチするアドレスを持つすべてのメッセージに適用されます。
2
デフォルトのアドレス設定。# ワイルドカードはすべてのアドレスにマッチするため、定義されたリソース制限およびポリシーはすべてのメッセージに適用されます。

リソース制限およびポリシーを設定するには、アドレスまたはアドレス セット を指定します (<address-setting> 使用して)、リソース制限およびポリシープロパティーをこれに追加します。これらのプロパティーは、指定したアドレス (またはアドレスセット) に送信された各メッセージに適用されます。

関連情報

  • ワイルドカードを使用したアドレスのセットのマッチに関する詳細は、『Configuring AMQ Broker』「AMQ Broker wildcard syntax」を参照してください。