-1

我正在尝试执行直写缓存的 C# 实现,以最大程度地减少对 db 的读取命中,我需要您的建议、文章或示例代码来完成此任务。

最初这将仅在一台服务器上使用,但将更新为在集群环境中工作。

我只能在 Oracle Site 上找到一篇值得一读的文章。

请分享你的看法

问候穆巴沙尔

4

1 回答 1

2

最简单的做法是在比数据库连接级别更高的级别进行缓存。如果您有一个数据访问层,可以将您从 SQL 的细节中封装出来,那通常是一个好地方。如果你有一个请求数据对象的地方,那就更好了;您的缓存密钥可以是这些对象的标识。

您最终可能想要的是一个缓存代理,它封装您的缓存逻辑,阻止读取但将写入传递到底层服务(对象持久层或数据访问层)。您可以使用WeakReference来使未使用的对象从缓存集合中过期,在这种情况下,您只需进行一点清理工作。另一方面,您可以编写自己的过期逻辑,在这种情况下,您必须做更多的清理工作,但会保留更多的控制权。

没有更具体的细节,很难给你一个具体的答案。

于 2010-03-24T06:13:15.740 回答