首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在内存中缓存查找表的最佳方法

在内存中缓存查找表的最佳方法
EN

Stack Overflow用户
提问于 2016-03-12 20:20:04
回答 1查看 1.3K关注 0票数 0

我有几百个查找表,我想缓存在内存中。我已经将它们拖放到了Linq to sql实体映射器上,我想一定有一种更好的(通用的)方法来读取内存中的数据,而不是使用"HttpContext.Current.Cache“对象加载每个单独的表。

所有查找表都以"L_“开头,后跟内容类型的名称。

任何评论都将受到高度赞赏。

最好的

EN

回答 1

Stack Overflow用户

发布于 2017-01-09 21:52:23

10 GB的数据量太大,无法缓存。

使用.NET(可能是System.Cache命名空间)自己的缓存。如果你曾经为移动应用等编写过Web API,你将能够重用你的缓存代码。

ASP.NET缓存使用WeakLinks,只要需要内存,偶尔使用的缓存项就会被移除。

如果你想要分布式缓存或者你的缓存需要持久化,可以使用Redis。

将Sql Server自己的内存表与存储过程一起使用将比使用实体框架(但不是Redis)更好。

像这样编写您的服务层代码(此代码也可在Web API中重用)

代码语言:javascript
运行
复制
private IList<TableName> GetAll()
{
    //find in cache and return  
    //load data if upper step doesn't find data in cache 
    // store data in cache for this specific lookup 
    // return data 
} 

我希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35957558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档