限时领|《AI 百问百答》专栏课+实体书(包邮)! 了解详情
写点什么

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

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

关注

评论

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

面向对象五大基本原则

彭阿三

面向对象设计 面向对象五个基本原则 基本原则

五分钟学会Elasticsearch查询代理设计

古月木易

架构师训练营第一次课程感想小记1

tuuezzy

软件工程 求职 架构师 UML

编程的未来 Java, C, Go, Swift, Dart? Uncle Bob Martin - The Future of Programming

John(易筋)

Java 敏捷开发 编程的未来 编程简史 Bob大叔

「编程模型」C++封装资源

顿晓

c++ 封装 资源封装 自动化管理 简化代码

架构师训练营第一周学习总结

全力以赴@

Apache Spark有哪些局限性

古月木易

spark

徒手撸框架--实现IoC

犀利豆

Java spring

Solidity的Bytecode和Opcode简介

程序那些事

区块链 智能合约 以太坊 Ethereum eth

浅谈互联网思维和区块链思维

CECBC

区块链思维

ERC20 Short Address Attack

程序那些事

区块链 以太坊 Token ERC20 代币

架构师训练营第二周

Melo

第一周作业一:食堂就餐卡系统设计

DZ

iPad配置OpenVPN客户端

wong

ipad OpenVPN

Assignment 01

高冰洁

平常心平常心

zhoo299

随笔杂谈

五分钟学会Elasticsearch查询代理设计

奈学教育

elasticsearch ES

回忆杀:我的编程能力是如何突飞猛进起来的

程序员小跃

Java android 编程 面向对象思想

SignalR Core之Hubs基本概念

猫定谔的靴

.net core SignalR realtime Hubs

【JS】给console来的样式

德育处主任

Java html5 大前端 Web console

IP 基础知识全家桶,45 张图一套带走

小林coding

计算机网络 计算机基础 IP

小师妹学JavaIO之:MappedByteBuffer多大的文件我都装得下

程序那些事

Java io nio 小师妹 buffer

终于有一个 Java 可以用的微信机器人了

犀利豆

Java

Apache Spark有哪些局限性

奈学教育

Apache Spark

徒手撸框架--实现Aop

犀利豆

Java spring

Java15都快出来了,你还不会Java8中的Lambda?

Java全栈封神

Java Lambda java8

大家都知道递归,尾递归呢?什么又是尾递归优化?

程序猿石头

读懂才会用:Redis ZSet 的几种使用场景

小眼睛聊技术

Java redis 学习 架构 后端

【总结】优秀架构师的职责及综合能力

食堂就餐卡系统设计

ARTS打卡第二周6.1-6.7

我笔盒呢

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