1

我正在将 Nhibernet 与 SysCache Provider 一起用于 Asp.net MVC 4 应用程序中的二级缓存。在某处我发现 SysCache 使用 ASP.Net 默认缓存系统来存储缓存项。为了减少对有限 RAM 的使用,我实现了我的自定义缓存提供程序,它将数据存储在 MongoDB 中。

现在我的问题是,当我使用 mongodb 使用我的自定义缓存提供程序时,nhibernet 二级缓存数据将存储在哪里?是由我的自定义缓存提供程序在 mongodb 中还是仍将在 RAM 中?

顺便说一句,我的最终目标是,我想要使用 SysCache 或任何其他免费缓存提供程序的 NHibernet 二级缓存,但不想将缓存项存储在 RAM 中而不是 mongodb 中。请给出更好的建议来实现它。

看待

哈比卜

4

1 回答 1

1

现在我的问题是,当我使用 mongodb 使用我的自定义缓存提供程序时,nhibernet 二级缓存数据将存储在哪里?

由于您已经开发了 mongo 的 SLC,如果您更改设置,数据可能会在 mongo ... 中?

select缓存的目的是提供比从原始数据库更快地获取/获取频繁数据的方法。

您的方法非常适合在有限内存的情况下正常工作,但我不确定它是否会提高您的应用程序的性能,而 SLC 的点需要。

您将缓存数据存储为 mongo 中的文档/blob?您是否将性能与原始缓存和无缓存进行了比较?

如果您的解决方案成功,则需要开发 mongo 的缓存,而不是针对 RDBMS 的原始查询。默认情况下,这不一定是真的。取决于您的目的和您使用的查询。

于 2013-08-26T06:43:01.137 回答