10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

对 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:416113
用户头像

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

关注

评论

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

DBA 行业是否将会消亡?

BinTools图尔兹

运维 dba 数据库管理工具

阿里资深技术专家崮德:如何成就更好的自己

阿里巴巴中间件

如何从零开始学Python:(4)如何处理列表数据?

广之巅

Python 4月日更

toB SaaS会成为苏州下⼀个“⼀号产业”么?

龙归科技

数字化 tob

企业架构设计方法TOGAF介绍

joinM

企业架构 技术架构 业务架构 TOGAF 技术与业务

今年我读了四个开源项目的源码,来分享下心得

yes

源码

HBase HA 分布式部署

Fong

大数据 运维 HBase hadoop3

⼤规模短⽂本聚类的设计和实践

百度Geek说

聚类 query 内聚

Android Crash监控方式

Darren

监控 异常检测 Android开发 NativeCrash

双非渣硕!四面阿里收到offer后,才发现学长给的面试笔记有多强大

Java 编程 程序员 面试 计算机

用户故事是垂直的切片(译)

Bruce Talk

敏捷 译文 Agile User Story

【采访融云CTO杨攀:2021如何让融云迈向更高舞台】(采访)

码界西柚

融云 杨攀

翻译:《实用的Python编程》TheEnd

codists

Python

混合云安全简史

龙归科技

混合云

灰度发布系统架构设计

xcbeyond

微服务 灰度发布 4月日更

pdf.js使用小结

空城机

大前端 4月日更 pdf.js

联盟链技术

360技术

用户故事拆分招数全景图(译)

Bruce Talk

敏捷 译文 Agile User Story

禁止算法识别性别,能消解歧视吗?

脑极体

全网最强的权限系统设计攻略:京东北极星商业系统权限管控实践

学Java关注我

Java 编程 程序员 架构 技术宅

python内置数据结构list、set、dict、tuple(一)

若尘

List 数据结构 set 字典 Python编程

《采访阿里“守护神”吴翰清:安全攻防-采访提纲》

Geek_6370d5

Properties类使用需要注意的坑

风翱

properties 4月日更

MySQL 表列数和行大小有哪些限制?

李尚智

MySQL 运维

第一课作业纠正

杰语

Spring Boot 两行代码轻松实现国际化

Java架构师迁哥

我是如何开始写作的

happlyfox

个人成长 4月日更 1 周年盛典

Spring Boot 2.0 实现优雅停机

U2647

Spring Boot 4月日更

如何做好前馈管理?

石云升

28天写作 职场经验 管理经验 4月日更

重读《重构2》- 以对象取代基本类型

顿晓

重构 4月日更

不忘初心,砥砺前行|暨InfoQ写作平台一周年

程序员架构进阶

28天写作 4月日更 1 周年盛典 我和写作平台的故事 InfoQ 写作平台 1 周年

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