我们在网站上看到性能缓慢和 408 错误调查显示,sitecore eventqueue 表正在快速增长(每小时 100 万行),这最终导致 sql 查询永远运行(请参阅下面的查询)耗尽所有资源并停止 sql server连接,导致 408 错误
SELECT [EventType], [InstanceType], [InstanceData], [InstanceName], [UserName], [Stamp], [Created] FROM [EventQueue] WHERE ([InstanceName] <> @targetInstance AND [RaiseGlobally] = 1 OR [InstanceName ] = @targetInstance AND [RaiseLocally] = 1) AND [Stamp] >= CAST(@fromTimestamp AS TIMESTAMP) ORDER BY [Stamp]
清除事件队列表,然后应用程序池回收使网站恢复正常。但是我们最终每天都这样做以保持网站运行,这是不正确的。
进一步调查显示,此表中有许多 RuntimeRolesUpdatedRemoteEvent 事件,显然没有在任何地方的代码中使用。
Sitecore 最近升级到版本 Sitecore.NET 6.6.0 (rev. 130529)
写在 eventqueue 表中的事件可以控制吗?无论如何要停止在事件队列表中发生的 RuntimeRolesUpdatedRemoteEvent 事件?