【问题标题】:Expire C# in memory cache on data table value changes数据表值更改时内存缓存中的 C# 过期
【发布时间】:2014-02-18 04:36:15
【问题描述】:

我有一个 c# 应用程序,它从 sql server 数据库在内存中缓存了一些数据表。 我写了一个线程在 30 分钟后更新缓存,但这听起来不是一个好的解决方案。 我觉得最好的解决方案是在数据表数据更改时过期缓存。 是否有任何框架可以通过配置来做到这一点。 我检查了 Enterprise Cache Liberary,但它似乎没有提供对数据表的关注。 我是否必须在数据库中编写触发器来更新一个表,这将帮助我的线程查看它并决定使缓存过期。

请告诉我此要求的最佳做法。

【问题讨论】:

    标签: c# .net sql-server caching


    【解决方案1】:

    您可能正在寻找 SqlDependency/SqlCacheDependency。不过不太确定。检查此链接here。可能对你有用。

    希望这会有所帮助。

    【讨论】:

    • 这看起来不错,因为我写了一个线程来监控数据库,我需要比较我的实现和 SQLDependency 之间的性能,它查找更改的频率,它是否触发相同的命令并比较数据内存?
    • 我认为它不会寻找变化。事实上,如果注册查询的结果发生变化,它会通知客户端。
    • 是的,它查找更改,SQL 不通知 Applicaiton,SQLDependency 在配置时间后内部查找对日志表的更改。见stackoverflow.com/questions/7353558/…
    猜你喜欢
    • 2018-02-21
    • 1970-01-01
    • 2019-07-11
    • 2015-10-28
    • 2011-06-17
    • 2015-03-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多