---
schema_version: "1"
id: 7a73a9f596409bf5898aa84f496c700352904ffd88fe6efb1b226d5f1e59fec8
title: Anypoint MQ Consume 操作
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/anypoint-mq-connector/latest/anypoint-mq-consume.md
canonical_url: https://docs.mulesoft.com/jp/anypoint-mq-connector/latest/anypoint-mq-consume
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 8dde3a224292a2bd72327ee7c8e65386e84655d86518e77bafd744654c9836ed
description: MuleSoft Documentation Site
release: 4.x
latest: true
---
# Anypoint MQ Consume 操作

Anypoint MQ Connector の Consume 操作を使用すると、アプリケーションはユースケースをサポートする肯定応答戦略を使用して、フローの実行中にいつでもキューから単一メッセージをコンシュームできます。

<table>
<tbody><tr>
<td class="icon">
<i class="fa icon-note" title="Note"></i>
</td>
<td class="content">
<div class="paragraph">
<p>Anypoint MQ では、メッセージエクスチェンジではなく、キューからのコンシュームがサポートされます。</p>
</div>
<div class="paragraph">
<p>アプリケーションがメッセージエクスチェンジからコンシュームしようとすると、Anypoint MQ REST API は次のエラーをスローします。
​<code>The destination should be a queue. (宛先はキューである必要があります。)</code></p>
</div>
</td>
</tr>
</tbody></table>

## [](#受信メッセージ構造)受信メッセージ構造

すべての受信メッセージは 2 つの部分から構成されます。

- `payload`​ - メッセージ本文を表します。
- `attributes`​ - 受信したメッセージのメタデータ (ID や他のプロパティなど) が含まれます。

![ペイロードとメッセージ属性を含む Mule メッセージ](/mulesoft/current/ja-jp/anypoint-mq-connector/latest/_images/amq-4x-consume-attributes.png)

## [](#メッセージのコンシューム)メッセージのコンシューム

キューからメッセージをコンシュームする最も簡単な方法は、Mule パレットからキャンバスに ​**\[Consume\]**​ 操作をドラッグして、メッセージの取得元であるキューの名前で ​`Queue`​ パラメーターを設定することです。

![宛先、肯定応答モードとタイムアウト、ポーリングタイムアウトを含むコネクタ設定](/mulesoft/current/ja-jp/anypoint-mq-connector/latest/_images/amq-4x-consume-operation.png)

```xml
<anypoint-mq:consume config-ref="Anypoint_MQ_config" destination="myQueue"/>
```

この例の Consume 操作は、​`myQueue`​ で最初に使用可能なメッセージをコンシュームし、次の構造の ​`MuleMessage`​ インスタンスに変換します。

- ペイロードとしてのメッセージ本文。
- メッセージ属性に含まれるメッセージのメタデータ。属性には ​`messageId`​ または ​`redeliveryCount`​ が含まれます。

`Queue`​ パラメーターで DataWeave 式を使用して、メッセージのコンシューム元となる対象キューを動的に変更します。

## [](#コンシュームされるメッセージ肯定応答)コンシュームされるメッセージ肯定応答

- **自動**
    
    デフォルトでは、​`acknowledgementMode`​ は ​`IMMEDIATE`​ です。つまり、メッセージはキューからコンシュームされるとすぐに、Mule フローに配信される前に肯定応答されます。メッセージの肯定応答に失敗すると、Consume 操作は ​`ANYPOINT-MQ:ACKING`​ エラーで終了します。
    
    詳細は、​[「即時肯定応答」](https://docs.mulesoft.com/jp/anypoint-mq-connector/latest/anypoint-mq-ack#immediate-acknowledgment)​を参照してください。
- **手動**
    
    メッセージの肯定応答を手動で制御するには、​`acknowledgementMode`​ を ​`MANUAL`​ に変更します。​`MANUAL`​ 肯定応答モードを使用している場合、アプリケーションロジックは ​[ACK](https://docs.mulesoft.com/jp/anypoint-mq-connector/latest/anypoint-mq-ack)​ または ​[NACK](https://docs.mulesoft.com/jp/anypoint-mq-connector/latest/anypoint-mq-ack)​ 操作を使用して、メッセージの肯定応答を実行するタイミングを決定します。
    
    手動肯定応答を実行するには、結果のメッセージ属性の一部として提供される ​`ackToken`​ の値が必要です。
    
    詳細は、​[「手動肯定応答」](https://docs.mulesoft.com/jp/anypoint-mq-connector/latest/anypoint-mq-ack#manual-acknowledgment)​を参照してください。

肯定応答タイムアウトについての詳細は、​[「肯定応答タイムアウト」](https://docs.mulesoft.com/jp/anypoint-mq-connector/latest/anypoint-mq-ack#acknowledgment-timeout)​を参照してください。

## [](#空のキュー管理)空のキュー管理

キューにメッセージがある場合、Consume 操作はすぐにメッセージの 1 つを返します。

キューが空の場合、この操作の動作は ​`pollingTime`​ パラメーターの値によって異なります。

- 値なし
    
    デフォルトでは、Consume 操作は空のキューからコンシュームするときに新しいメッセージの到着を 10000 ミリ秒 (10 秒) 間待機します。
    
    この時間内に Anypoint MQ でメッセージが受信されない場合、Consume は ​`ANYPOINT-MQ:TIMEOUT`​ エラーで失敗します。
- `0`
    
    `pollingTime`​ の値が ​`0`​ の場合、Consume 操作はデフォルトの 10000 ミリ秒 (10 秒) 間待機します。
    
    この時間内に Anypoint MQ でメッセージが受信されない場合、Consume で結果として ​`null`​ メッセージが生成され、エラーは生成されません。
- `1`​ から ​`20000`
    
    `pollingTime`​ の値が 1 ～ 20000 ミリ秒 (最大値) の場合、Consume は新しいメッセージの到着を、​`pollingTime`​ で指定された時間待機します。
    
    特定の時間枠内で Anypoint MQ でメッセージが受信されない場合、Consume は ​`ANYPOINT-MQ:TIMEOUT`​ エラーで失敗します。
- `pollingTime`​ の値が 0 ～ 20000 ミリ秒 (20 秒) の範囲外の場合、Consume は ​`ANYPOINT-MQ:CONSUMING`​ エラーで失敗します。

## [](#出力メッセージのメタデータ)出力メッセージのメタデータ

受信する各メッセージは、​`Payload`​ と ​`Attributes`​ の 2 つの部分から構成されます。​`Attributes`​ にはメッセージのメタデータが含まれます。

このメタデータは、次を含む Anypoint MQ メッセージで利用可能なすべての情報をマップします。

- メッセージ ID
- ヘッダーマップ
- プロパティマップ

![ペイロードとメッセージ属性を含む Mule メッセージ](/mulesoft/current/ja-jp/anypoint-mq-connector/latest/_images/amq-4x-consume-attributes.png)

`attributes`​ 構造についての詳細は、​[「Anypoint MQ Connector リファレンス - 4.x」](https://docs.mulesoft.com/jp/anypoint-mq-connector/latest/anypoint-mq-connector-reference#consume)​の Consume 操作を参照してください。

## [](#関連情報)関連情報

- [Anypoint MQ ACK および NACK 操作](https://docs.mulesoft.com/jp/anypoint-mq-connector/latest/anypoint-mq-ack)