---
title: "一時的なデータベース接続エラーの処理"
slug: "handle-transient-database-connection-errors"
abstract: "スマートリトライ機能で一時的なデータベース接続エラーを処理できます。"
---
# 一時的なデータベース接続エラーの処理

Azureのようなクラウド環境では、データベース接続が定期的に切断されることがあります。こうした一時的なエラーを認識し、失敗した操作を自動的に再試行でき、ユーザーにエラーメッセージを表示することはありません。ほとんどの操作は2回目の試みで成功し、ユーザーはエラーがあったことに気づきません。

このSitecore.Data.DataProviders.TransientRetryerはMicrosoft Enterprise Library Transient Fault Handling Application Block(エンタープライズライブラリの一時的故障処理アプリケーションブロック)に基づいており、再試行ロジックを実装しています。再試行機は、最初の再試行の1秒前に待ち、その後最大3回まで再試行する増分的な再試行戦略を指定します。一時的再試行はデフォルトで無効化されています。

トランジェント再試行器を可能にするために:

-   sitecore.configファイルをこうやってパッチを当ててください:
    
    <retryer disabled="false" type="Sitecore.Data.DataProviders.TransientRetryer, Sitecore.Kernel">
     <param desc="Log each exception">true</param>
    </retryer>
    

また、より古いリトライャー(Sitecore.Data.DataProviders.Retryer)も存在します。両方のリトライャーを有効にすると、構成上で最初に定義されたものが使われます。したがって、トランジェントリトライャーのみを使用することを推奨します。

web.configファイルのRetryPolicyConfigurationでトランジェントリトライア戦略を設定できます。