GMTC北京站两周后开幕,58个议题全部上线,点击查看 了解详情
写点什么

对 Entity Framework 应用二级缓存

2011 年 9 月 07 日

二级缓存(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 年 9 月 07 日 23:415182
用户头像

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

关注

评论

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

跪了!Alibaba内部出品贼火的Java面试手册,全面对标蚂蚁金服、头条、拼多多等

Java成神之路

Java 程序员 架构 面试 编程语言

框架是教科书,但是思考架构更有价值

DisonTangor

架构师 知识图谱

位运算符在 JS 中的妙用

浩浩子

京东T7团队技术4面:线程池+索引+Spring +分布式锁+Mysql+项目等

Java成神之路

Java 程序员 架构 面试 编程语言

面试刷题必备!万人血书跪求的Java面试题库太全了

Java王路飞

Java 程序员 架构 面试 分布式

凭借阿里大牛最新版Java核心开发手册,已斩获阿里offer

Crud的程序员

Java 编程 架构 Java工程师

使用 Typescript 的一些注意事项

浩浩子

一个视频带你编译自己的Android系统!

刘望舒

android Android进阶

阿里二面,面试官居然把 TCP 三次握手问的这么细致

云流

Java 编程 架构 面试 网络

『BATcoder』都2021年了,是时候安装Ubuntu了!

刘望舒

android Android进阶

2021拼多多(Java岗)面经最新分享

比伯

Java 编程 架构 面试 计算机

音视频开发经验之路【二】ijkplayer实际开发中遇到的问题总结

鱼哥

音视频

金三试水Java社招,历经“阿里+字节+bigo”等5家面经

Java架构师迁哥

同样是工作三年,一面阿里后,发现我和大厂的同学差距竟然这么大

互联网架构师小马

Java 面试 求职 阿里 找工作

ARTS-week 4

steve_lee

大厂直通车!金三银四高频面试题(Java岗)汇总!

程序员小毕

Java 程序员 架构 面试 分布式

第八章作业—张红珊

zzz

在公司九年被裁是谁的问题?

石云升

离职 28天写作 职场经验 3月日更

Java 并发基础(一):synchronized 锁同步

看山

Java Java并发 并发编程

智能时代的TCL之舞

脑极体

是时候下载Android11系统源码和内核源码了~

刘望舒

android Android进阶

MySQL 锁

无心

MySQL

你真的知道基于区块链的「云计算」是什么吗?

CECBC区块链专委会

云计算

深圳应用区块链提升政务服务效能调查

CECBC区块链专委会

电子发票

操作系统的内存管理(中)

Arvin

操作系统 内存管理

区块链列入数字经济重点产业 机构预测其大规模应用将加速

CECBC区块链专委会

数字经济

MySQL主从架构原理

无心

MySQL

刘华:看板那么好,为什么都成了摆设?

刘华Kenneth

架构 敏捷 精益 看板

凭借这份Java超硬核面试 “备战” 手册!我刚面试完字节跳动、阿里、华为、小米等后端岗位

Java成神之路

Java 程序员 架构 面试 编程语言

加密解密之 crypto-js 知识

浩浩子

音视频开发经验之路【三】吐血干货,直播首屏耗时400ms以下的优化实践

鱼哥

音视频

Service Mesh的演化与未来

Service Mesh的演化与未来

对Entity Framework应用二级缓存-InfoQ