1

我有一个 mvc 项目。我们有一些必须为每个用户收集的数据。我创建了一些单例类来缓存数据以获得更好的责任。有些人避免在他们的项目中使用单例类。我想知道你喜欢这个,如果不喜欢,你的替代品是什么?

4

2 回答 2

1

我看不出为什么您不应该在单例中缓存数据。我也在使用这种缓存方式来大大减少数据库调用的数量。只要确保你的缓存是最新的。

我不知道您的项目及其环境,但在我的情况下,数据库中的数据会从另一个应用程序更改。我实现了一个数据库触发器来解决这个问题。您应该考虑在您的情况下执行相同的操作,因此每当数据库中的某些本地缓存数据发生更改时,您都会收到通知并可以更新缓存。

我想我不必提及这一点,但缓存当然通常只对不经常更改的相对静态数据有意义。

于 2013-06-29T07:40:50.723 回答
1

99% 的正确方法不是重新发明轮子。如果您不满意System.Web.Caching.Cache,您可以使用System.Runtime.Caching.MemoryCache每个用户的实例。

于 2013-07-01T06:37:09.023 回答