写点什么

对 Entity Framework 应用二级缓存

  • 2011-09-07
  • 本文字数:667 字

    阅读完需:约 2 分钟

二级缓存(Second Level Caching)是个 Entity Framework 中尚不能开箱即用的功能。在一篇 MSDN 文章“用 Entity Framework 和 AppFabric 实现二级缓存”中,Julie Lerman 展示了如何通过在 Entity Framework 中利用像 Microsoft AppFabric 等缓存服务来实现二级缓存。

我们为什么需要二级缓存?

EF 的最大好处之一是其拥有根据在上下文中找到的状态信息自动生成数据库持久化命令(插入、更新和删除)的能力。但是如果那些状态信息不可用,那么当调用 SaveChanges 命令时 EF 就会无所事事。

二级缓存有助于解决此类问题。这些缓存位于事务之外——常常是应用程序之外——因此可用于任何上下文实例。

Julie 扩展了由 Jarek Kowalski 设计的 EF Caching Provider 类,从而使得此类可与 Windows Server AppFabric 协同工作。她修改了适配器类,以便此类可以调用 AppFabric 的客户端 API,她还扩展 ObjectContext 类。你可以从她的文章中下载代码示例从而学到更多知识。

通过缓存常用查询数据从而避免频繁命中数据库,缓存二级缓存同样有助于提高高事务性应用程序(highly transactional applications)的性能。对于需要与像 Entity Framework 等 ORM 框架一起使用的缓存解决方案而言,Microsoft AppFabric 并非唯一的选择——在对代码进行适当地修改后,例如 memcached 等其他框架同样可用于相同的目的。

ADO.NET Entity Framework 是一款来自微软的对象- 关系映射器。最近发布的EF 4.1 具有一些有趣的功能,例如 Validation (验证)、 Spatial data (空间数据)、 Enums (枚举)及更多功能。

查看英文原文: Second Level Caching with Entity Framework

2011-09-07 23:416056
用户头像

发布了 55 篇内容, 共 20.7 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

软件架构中的耦合

俞凡

架构

CrossOver for mac好用吗 crossover mac使用教程

阿拉灯神丁

Mac 软件 CrossOver Mac下载 虚拟机软件 pd 19 CrossOver 24

Scroll 生态明星项目Pencils Protocol,发展潜力巨大

股市老人

Scroll 生态明星项目Pencils Protocol,发展潜力巨大

BlockChain先知

如何在 JS 中快速读取文件

南城FE

JavaScript 前端 nodejs

核心竞争力,到底是什么?

老张

竞争力 职场成长 核心竞争力

怎么把Python脚本打包成可执行程序?

我再BUG界嘎嘎乱杀

Python 编程 后端 开发语言

云原生架构模式

俞凡

架构 云原生

天润融通:大模型与生成式AI的融合,开辟零售增长新路径

天润融通

人工智能 AI 零售 天润融通

架构治理三:性能优化

Bingo

架构 性能

Scroll 上的明星项目Pencils Protocol ,缘何被严重低估?

股市老人

ChatGPT-4o有什么特别之处?

石臻臻的杂货铺

AI ChatGPT ChatGPT4

反VC情绪:加密市场需要新的分布式代币发行方式

股市老人

批量采集抖音商品详情数据:推荐你使用API(通过商品id取商品详情商品主图sku属性)

tbapi

抖音商品详情数据接口 抖音API

GPT-4o API 申请开发部署应用:一篇全面的指南

蓉蓉

openai gpt4o

反VC情绪:加密市场需要新的分布式代币发行方式

BlockChain先知

一文解析Scroll 生态明星项目Pencils Protocol,严重被低估

西柚子

关于 GUID 的规律

雄鹿 @

C# .net .net core Guid

Scroll 上的明星项目Pencils Protocol ,缘何被严重低估?

石头财经

Apache IoTDB进行IoT相关开发实践

芯动大师

应用 IoTDB Apache IoTDB

对Entity Framework应用二级缓存_语言 & 开发_Roopesh Shenoy_InfoQ精选文章