---
title: "EventQueueとPublishQueueテーブルのクリーンアップ"
slug: "clean-up-the-eventqueue-and-publishqueue-tables"
abstract: "SitecoreのイベントキューとSitecoreの公開キューが大きくなりすぎてパフォーマンスに問題が生じるのを防ぐ方法。"
---
# EventQueueとPublishQueueテーブルのクリーンアップ

適用対象

Content Management、EXM Dispatch、Content Delivery、xDB Processing、xDB Reportingです。

イベントキューは、Content ManagementインスタンスのMasterデータベース内のEventQueueという名前のテーブルです。これは主にインデックス更新やキャッシュクリア時にインスタンス間のイベント共有に使用されます。

パブリッシングキューは、Content Managementインスタンスのマスターデータベースにある「 PublishQueue 」というテーブルです。 [これはウェブサイトのインクリメンタル公開](https://doc.sitecore.com/xp/en/users/100/sitecore-experience-platform/publish-a-website.html)に使用されます。

キューが大きくなりすぎるとパフォーマンスに問題が生じることがあります。パフォーマンスを向上させるには、オンデマンドでキューをクリーンアップするか、Sitecoreが自動的にクリーンアップします。

> !重要複数のContent Managementインスタンスがある場合は、各インスタンスのキューを個別にクリーンアップする必要があります。

## イベントキューをオンデマンドで整理する

イベントキューをオンデマンドで整理するには:

1.  Sitecore Launchpadで、 **コントロールパネル**、 **管理ツール**、 **イベントキュー統計**をクリックしてください。
2.  **Cleanup EventQueue**ペインでマスターデータベースを選択します。
3.  **クリーンアップ**後の欄を編集し、新しいエントリーが処理されるまでに何時間かに設定してください。通常は4時間で十分です。
4.  「 **クリーンアップ**」をクリックします。

## イベントキューを自動的にクリーンアップします

EXM Content Delivery、ディスパッチ、xDB処理、xDBレポートのインスタンスのイベントキューをクリーンアップする必要はないので、これらのインスタンスからSitecore.Tasks.CleanupEventQueue構成を安全に削除したり、intervalプロパティを0に設定して無効化したりできます。

EventQueueテーブルの自動クリーンアップを設定するには:

1.  <wwwroot>\\App\_Config\\Sitecore.configファイルのSitecore.Tasks.CleanupEventQueue agent設定で、intervalプロパティを編集して、クリーンアップタスクを実行する頻度を指定します。通常、新しいエントリを処理するのに4時間で十分です:
    
    <agent
     type="Sitecore.Tasks.CleanupEventQueue, Sitecore.Kernel"
     method="Run"
     interval="\`04:00\`:00">
     <DaysToKeep18791275782<11879127578/DaysToKeep>
     <IntervalToKeep>hh:mm:ss</IntervalToKeep>
    </agent>
    
2.  DaysToKeepプロパティを編集して、イベントキューにエントリを保持したい日数を指定します:
    
    <agent
     type="Sitecore.Tasks.CleanupEventQueue, Sitecore.Kernel"
     method="Run"
     interval="\`04:00\`:00">
     <DaysToKeep18791275782<11879127578/DaysToKeep>
     <IntervalToKeep>hh:mm:ss</IntervalToKeep>
    </agent>
    
3.  より細かくしたい場合は、IntervalToKeepプロパティを編集して、イベントキューに保持したい時間、分、秒数を指定します。 IntervalToKeepプロパティはDaysToKeepプロパティを上書きします:
    
    <agent
     type="Sitecore.Tasks.CleanupEventQueue, Sitecore.Kernel"
     method="Run"
     interval="\`04:00\`:00">
     <DaysToKeep18791275782<11879127578/DaysToKeep>
     <IntervalToKeep>hh:mm:ss</IntervalToKeep>
    </agent>
    
4.  Sitecore.configファイルを保存してください。
    

## オンデマンドで出版キューを整理する

オンデマンドで出版キューを整理するために:

1.  Sitecore Launchpadで、 **コントロールパネル**、 **管理ツール**、そして **キュー統計の公開**をクリックしてください。
2.  クリーン **アップ・パブリッシュ** キューのペインでマスターデータベースを選択します。
3.  **クリーンアップ**後の欄を編集し、新しいエントリーが処理されるまでに何時間かに設定してください。通常は4時間で十分です。
4.  「 **クリーンアップ**」をクリックします。

## 公開キューを自動的に整理します

EXM Content Delivery、ディスパッチ、xDB処理、xDBレポートの各インスタンスの公開キューをクリーンアップする必要はないため、これらのインスタンスからSitecore.Tasks.CleanupPublishQueue構成を削除したり、intervalプロパティを0に設定して無効化したりできます。

PublishQueueテーブルの自動クリーンアップを設定するには:

1.  <wwwroot>\\App\_Config\\Sitecore.configファイルのSitecore.Tasks.CleanupPublishQueueエージェント設定で、intervalプロパティを編集してクリーンアップタスクを実行する頻度を指定します。通常、新しいエントリを処理するのに4時間で十分ですが、インクリメンタルパブリッシングを使わない場合は、より頻繁に実行するように設定できます:
    
    <agent
     type="Sitecore.Tasks.CleanupPublishQueue, Sitecore.Kernel"
     method="Run"
     interval="\`04:00\`:00">
     <DaysToKeep>30</DaysToKeep>
    </agent>
    
2.  DaysToKeepプロパティを編集して、公開キューにエントリを保持したい日数を指定します:
    
    <agent
     type="Sitecore.Tasks.CleanupPublishQueue, Sitecore.Kernel"
     method="Run"
     interval="\`04:00\`:00">
     <DaysToKeep>30</DaysToKeep>
    </agent>
    
3.  Sitecore.configファイルを保存してください。