繁体   English   中英

在不使用“SqlDependency”类的情况下监视数据库更改

[英]Monitoring database changes without using 'SqlDependency' class

我目前正在使用Microsoft SQL Server 2008。

我的生产服务器负载很重。

我的C#应用​​程序使用'SqlDependency'类来监视某些表更改。

在开发环境中 - 应用程序正常工作,并且SQL服务器的更改事件被正确触发。

在生产环境中 - 即使没有任何更改,应用程序也会获得更改事件。 我已经读过“SqlDependency”在重负载下表现不佳。

我正在寻找其他解决方案,任何建议?

如果您在没有更改时收到通知,则表示其他内容触发了通知。 必须始终检查OnChange处理程序上收到的SqlNotificationEventArgs参数,并根据InfoSourceType适当的响应。 在生产中,您很可能会收到Info.Options类的通知,表示不正确的SET选项(即特定于环境的问题)。

至于有关负载下SqlDependency的注释,您必须链接源。 但总体上查询通知是为很少变化的数据的缓存失效而设计的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM