---
schema_version: "1"
id: 1150a0e44b15a8872c5222a0c2f5a0e9df75260d668ecbef172384e77d6e9fe6
title: 再接続戦略
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/mule-runtime/4.7/reconnection-strategy-about.md
canonical_url: https://docs.mulesoft.com/jp/mule-runtime/4.7/reconnection-strategy-about
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 9dfbd705702a7c4158879facf0961bd513bfd45353c8ce6bfa3f11bcdf71f887
description: MuleSoft Documentation Site
release: "4.7"
latest: false
---
# 再接続戦略

Mule アプリケーション内の操作が外部サーバーへの接続に失敗すると、デフォルト動作ではその操作は直ちに失敗し、接続エラーが返されます。

たとえば、FTP 用 Anypoint Connector (FTP Connector) の操作が FTP サーバーへの接続に失敗すると、操作は ​`FTP:CONNECTIVITY`​ エラーをスローします。エラー名には、​`FTP:CONNECTIVITY`​ や ​`DB:CONNECTIVITY`​ (データベース用 Anypoint Connector (Database Connector) の場合) など、コネクタ固有の名前空間が反映されます。

このデフォルト動作を変更するには、操作の再接続戦略を設定します。

<table><tbody><tr><td class="icon"><i class="fa icon-note" title="Note"></i></td><td class="content">操作を実行しても、接続エラーで失敗すると、FTP Connector で設定された再接続戦略はトリガーされません。この例では、新規または更新されたファイルを照会する FTP サーバーで ​<code>ftp:listener</code>​ を確立する必要がある接続にのみ再接続戦略が適用されます。</td></tr></tbody></table>

## [](#操作の再接続戦略の設定)操作の再接続戦略の設定

操作の再接続戦略を設定するには、操作のプロパティを変更するか、または操作のグローバル要素の設定を変更します。たとえば、FTP Connector 設定で再接続戦略を設定できます。

![接続戦略の設定](/mulesoft/current/ja-jp/mule-runtime/4.7/_images/mruntime-reconnection-strategy-ftp.png)

使用できる再接続戦略とそれぞれの動作は次のとおりです。

- **None (なし)**
    
    デフォルトの動作です。接続に失敗すると直ちに接続エラーを返します。
- **Standard (標準)**​ (​`reconnect`​)
    
    接続エラーを返すまでの再接続試行回数と再接続を実行する間隔を設定します。
- **Forever (無期限)**​ (​`reconnect-forever`​)
    
    指定された間隔で再接続を継続して試みます。

## [](#xml-再接続戦略設定の例)XML 再接続戦略設定の例

それぞれの再接続戦略と設定の例を示します。

- Standard 再接続戦略の例
    
    FTP Connector 設定における Standard 再接続戦略の例です。失敗までの再接続試行回数を ​`5`​ に設定し、接続テストが失敗した場合にはアプリケーションのデプロイも失敗するように ​`failsDeployment`​ を ​`true`​ に設定します。頻度が指定されていないため、デフォルトの 2000 ms ごとに接続が再試行されます。
    
    ```xml
    <ftp:config name="FTP_Config" doc:name="FTP Config" >
      <ftp:connection host="ftp.someftphost.com" port="21" username="myusername" password="mypassword" >
        <reconnection failsDeployment="true" >
          <reconnect count="5"/>
        </reconnection>
      </ftp:connection>
    </ftp:config>
    <flow name="reconnectionsFlow" >
      <ftp:listener doc:name="On New or Updated File" config-ref="FTP_Config">
        <scheduling-strategy >
          <fixed-frequency />
        </scheduling-strategy>
      </ftp:listener>
    </flow>
    ```
- Forever 再接続戦略の例
    
    FTP Connector 設定における Forever 再接続戦略の例です。コネクタは、アプリケーションが実行されている限り、4000 ms ごとに接続を再試行します。
    
    ```xml
    <ftp:connection host="ftp.someftphost.com" port="21" username="myusername" password="mypassword" >
      <reconnection>
        <reconnect-forever frequency="4000"/>
      </reconnection>
    </ftp:connection>
    ```

## [](#再接続戦略リファレンス)再接続戦略リファレンス

Mule アプリケーションの XML 設定ファイルを編集することで設定できる再接続戦略ごとの設定属性を以下に示します。

- `<reconnection>`​ の属性
    
    <table class="tableblock frame-all grid-all fit-content spread">
<colgroup>
<col>
<col>
<col>
<col>
<col>
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">名前</th>
<th class="tableblock halign-left valign-top">型</th>
<th class="tableblock halign-left valign-top">必須</th>
<th class="tableblock halign-left valign-top">デフォルト</th>
<th class="tableblock halign-left valign-top">説明</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>failsDeployment</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">boolean (ブール)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">no (いいえ)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code>​ の場合は、接続テストが失敗するとデプロイも失敗します。</p></td>
</tr>
</tbody>
</table>
- `<reconnect>`​ の属性
    
    <table class="tableblock frame-all grid-all fit-content spread">
<colgroup>
<col>
<col>
<col>
<col>
<col>
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">名前</th>
<th class="tableblock halign-left valign-top">型</th>
<th class="tableblock halign-left valign-top">必須</th>
<th class="tableblock halign-left valign-top">デフォルト</th>
<th class="tableblock halign-left valign-top">説明</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>blocking</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">boolean (ブール)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">no (いいえ)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">true</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code>​ の場合は、再接続戦略が個別の非ブロックスレッドで実行されます。</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>frequency</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">long (ロング)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">no (いいえ)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">2000</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">再接続する頻度 (ミリ秒)</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>count</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">integer (整数)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">no (いいえ)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">2</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">再接続を試みる回数</p></td>
</tr>
</tbody>
</table>
- `<reconnect-forever>`​ の属性
    
    <table class="tableblock frame-all grid-all fit-content spread">
<colgroup>
<col>
<col>
<col>
<col>
<col>
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">名前</th>
<th class="tableblock halign-left valign-top">型</th>
<th class="tableblock halign-left valign-top">必須</th>
<th class="tableblock halign-left valign-top">デフォルト</th>
<th class="tableblock halign-left valign-top">説明</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>blocking</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">boolean (ブール)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">no (いいえ)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">true</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code>​ の場合は、再接続戦略が個別の非ブロックスレッドで実行されます。</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>frequency</code></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">long (ロング)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">no (いいえ)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">2000</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">再接続する頻度 (ミリ秒) を指定します。</p></td>
</tr>
</tbody>
</table>

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

- [コアコンポーネント](https://docs.mulesoft.com/jp/mule-runtime/4.7/about-components)
- [コネクタおよびモジュール](https://docs.mulesoft.com/connectors/)
- [グローバル要素の設定](https://docs.mulesoft.com/jp/mule-runtime/4.7/global-elements)