Nhibernate 之 二级缓存
来源:互联网 发布:罪恶装备人物乐乎 编辑:程序博客网 时间:2024/06/09 02:39
NHibenrate 适用版本 : 2.1.2.4000 GA
(原文链接 http://ddbiz.com/?p=149)
NHibernate 二级缓存可以说是与session不相关的,是ISessionFactory级别的。也就是说,不论哪个Session装载的对象,都被缓存在ISessionFactory中。
1. 配置二级缓存
NHibernate的二级缓存需要几个必要条件:
1.1) hibernate.cfg.xml中明确定义,如:
#1 <property name='cache.provider_class'>NHibernate.Caches.MemCache.MemCacheProvider, NHibernate.Caches.MemCache</property>
#2 <property name='cache.use_second_level_cache'>true</property>
#1 指明使用的cache实现
#2 指明要在sessionfactory中启用二级缓存。
如何配置memcache二级缓存?
此处实现memcache做二级缓存是因为我的其他项目也用到了memcache,有专门的几个服务器做缓存服务,所以也算是资源最大化利用吧。
memcache二级缓存需要几个assembly:
ICSharpCode.SharpZipLib.dll
Memcached.ClientLibrary.dll
NHibernate.Caches.MemCache.dll
这几个assembly都必须复制到应用的执行空间(或者加入到GAC)
除了上述1)的provider_class之外,在应用的配置文件中(app/web.config),还需要定义memcache的几个配置项:
以下为 web.config 配置:
<configSections>
<section name="memcache" type="NHibernate.Caches.MemCache.MemCacheSectionHandler, NHibernate.Caches.MemCache" />
... ...
</configSections>
<memcache>
<memcached host="127.0.0.1" port="11211" />
</memcache>
1.2) 在对象定义中指明使用cache
如 TUser.hbm.xml中:
<cache usage="read-write" />
2 使用二级缓存
经过1.2声明的对象,在 Get, Load, Create之后,都会被存入二级缓存。具体应用后面慢慢加入。(待续)
(原文链接 http://ddbiz.com/?p=149)
- 十五、NHibernate之二级缓存
- Nhibernate 之 二级缓存
- nhibernate性能之二级缓存篇
- nhibernate性能之二级缓存篇
- NHibernate之旅(23):探索NHibernate二级缓存(上)
- NHibernate之旅(24):探索NHibernate二级缓存(下)
- NHibernate之旅(23):探索NHibernate二级缓存(上)
- NHibernate之旅(24):探索NHibernate二级缓存(下)
- NHibernate二级缓存(第十一篇)
- 在NHibernate中使用memcache二级缓存
- 在NHibernate中使用memcache二级缓存
- 开始Nhibernate之旅---Nhibernate是什么
- 跟NHibernate之夏一起学习NHibernate
- Hibernate 之 二级缓存
- Hibernate4之二级缓存配置
- Hibernate之二级缓存运用
- Hibernate 之 二级缓存
- Hibernate4之二级缓存配置
- .net過度效果
- 扩展spring jdbcTemplate 实现分页查询 转
- Managing an Agile Software Project
- 有关视频的异常
- SQL语句 SELECT LIKE 用法详解
- Nhibernate 之 二级缓存
- 获取IP
- android 包
- php soap 详解 附简单案例
- 文件锁
- oracle expdp/impdp用法简要介绍
- 复杂报表解决方案之比较
- Windows CE下的字符串
- Agile Managers Build Trusting Relationships with Their Teams