写点什么

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

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

关注

评论

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

围绕“开源+深耕”策略和数字化监控手段,动态管理场景生态价值

易观分析

银行 易观 场景金融

「工作小记」接口请求数据的缓存实践

叶一一

前端 设计思维 9月月更

C++学习------iso646.h与limits.h头文件的源码学习

桑榆

c++ 9月月更

在小程序中开启直播的解决方案

Geek_99967b

小程序容器 小程序开发

计算机网络——速率相关的性能指标

StackOverflow

计算机网络 编程‘ 9月月更

剖析智能运维的五大应用场景

穿过生命散发芬芳

智能运维 9月月更

你真的理解C语言的灵魂 “ 指针 ” 吗?(初阶篇)

Albert Edison

指针 C语言 野指针 9月月更

MVCC

急需上岸的小谢

9月月更

跟着卷卷龙一起学Camera--AWB

卷卷龙

ISP 9月月更

深入学习SAP UI5框架代码系列之四:HTML原生事件 VS UI5 Semantic事件

汪子熙

JavaScript SAP SAP UI5 ui5 9月月更

深入学习SAP UI5框架代码系列之三:UI5 控件的渲染器

汪子熙

JavaScript 前端框架 SAP UI5 ui5 9月月更

SAP系统和微信集成的系列教程之二:如何通过微信公众号消费API

汪子熙

API 系统集成 SAP 微信开发 9月月更

分布式中灰度方案实践

Java 架构

京东前端面试题

loveX001

JavaScript 前端

业务应用小程序化,一种潜在的技术趋势

Speedoooo

小程序 移动开发 小程序容器

SAP系统和微信集成的系列教程之一:微信开发环境的搭建

汪子熙

系统集成 SAP 微信开发 微信平台 9月月更

[极致用户体验] 在微信大字号模式下,网页样式乱了怎么办?

HullQin

CSS JavaScript html 前端 9月月更

SD-WAN网络可靠性设计

阿泽🧸

9月月更 网络可靠性设计

小程序能否成为电商的突破口

Geek_99967b

小程序 小程序开发

数据治理(九):Atlas界面操作

Lansonli

数据治理 Atlas 9月月更

NFT商城开发——NFT数字收藏平台开发解决方案

开源直播系统源码

NFT 元宇宙 数字藏品 数字藏品开发

Java进阶(八)Java加密技术之对称加密、非对称加密、不可逆加密算法

No Silver Bullet

对称加密 非对称加密 9月月更 不可逆加密

数据中台改名DaaS平台?究竟什么是数据即服务(DaaS)?

雨果

DaaS数据即服务

DDD领域驱动设计

源字节1号

软件开发 前端开发 后端开发 软件设计思想

2022-09-06:以下go语言代码输出什么?A:Hi All;B:Hi go All;C:Hi;D:go All。 package main import “fmt“ func app() f

福大大架构师每日一题

golang 福大大 选择题

边缘服务网格 osm-edge 数据平面基准测试

Flomesh

Service Mesh 服务网格

库调多了 都忘了最基础的概念-进程/线程篇

知识浅谈

9月月更 线程与进程

Linux系统安装MySQL

MySQL Centos 7 navicat 9月月更

消除 JavaScript 的一些“异味”

掘金安东尼

JavaScript 前端 9月月更

时代变了,企业网站应该这么策划内容

石头IT视角

《小米创业思考》之三:互联网七字诀

郭明

读书笔记

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