Sitecore EventQueue表增长失控 [英] Sitecore EventQueue Table growing out of control

查看:13
本文介绍了Sitecore EventQueue表增长失控的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们遇到了EventQueue表有时增长非常快的问题,每秒多达3000条记录,并且永远不会清除记录(目前为3000万条)。我们的环境设置如下:

Sitecore 7.2

  • 4台CD服务器和1台CM服务器
  • 所有四台CD服务器都是负载均衡的。
  • CD1和CD2指向DB1服务器CD3和CD4指向DB2
  • 服务器有2个发布目标(每个数据库一个)合并
  • 跨所有服务器(CM、CD)为Core数据库设置复制
  • EventQueue已启用

我有几个问题,所以我将它们分解为单独的行项目。

  1. 当为所有CD服务器发布PUBLISH时,更新内容是直接从CM数据库发送到CD数据库(所有正确的表),还是发送到CD数据库中的EventQueue表,并且CD服务器具有查看该表并根据需要进行更新的作业/任务。

  2. 根据对第一个问题的回答,如果有两个CD服务器指向同一个数据库,它们如何知道是否应该处理EventQueue表(它们是否会各自处理该表并重复工作)

  3. 为什么没有清除EventTable表?如何清除,何时清除?

推荐答案

  1. 在CM发布时,发布请求将发送到CD数据库上的EventQueue表,在该表中将根据实例的发布计划进行处理。
  2. EventQueue表中的InstanceName列存储每个Sitecore实例的唯一名称(默认情况下为计算机名称+IIS实例名称,但可以在web.config中设置)。这使负载平衡环境中的单个CD实例能够拾取事件。
  3. EventQueue表由web.config的<scheduling>元素中定义的Sitecore任务清除,尽管我以前见过这种错误行为。默认设置如下:

    <agent type="Sitecore.Tasks.CleanupEventQueue, Sitecore.Kernel" method="Run" interval="04:00:00"> <DaysToKeep>1</DaysToKeep> </agent>

    /li>

我以前在EventQueue和PublishQueue表上遇到过高负载,建议尝试以下方法(其中一些建议来自Sitecore支持):

最后,来自Sitecore支持:

Sitecore建议History、PublishQueue和EventQueue表中的行数(条目)应小于1000。

这篇关于Sitecore EventQueue表增长失控的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆