`
wanghua305
  • 浏览: 29978 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

hibernate使用jboss缓存

阅读更多

第一步:配置
为了使用Hiberante的二级缓存支持集群,可以选择OSCache和JBossCache等,这里我们选择了JBossCache.
JBossCache可以在这里找到http://www.jboss.org/developers/projects/jboss/cache/。
1.Hibernate的配置
(1)在hibernate.cfg.xml中加入下在面的语句,如果有使用了其它的cache请注掉
<property name="hibernate.cache.provider_class">net.sf.hibernate.cache.TreeCacheProvider</property>
(2)在hibernate的映射文件中,在需要缓存的类定义中加入类似下面的语句
<cache usage="nonstrict-read-write"/>,应该改为<cache usage="read-only | transactional"/>usage这个属性根据需要可以改为对应的值(另注:以前这里主要的错误是使用了nonstrict-read-write,而根据HIBERNATE的文档,只能用read-only或taransactional,我记得当时我用了read-wirte,可奇怪得是没有发生问题,郁闷,哪位高人知道请通知我一下)
至此,Hibernate的配置做完
2.JBossCache的配置
首先需要建一个名为treecache.xml的文件,对于web应用,放在WEB-INF下面就行,内容类似下面的内容
代码内容
<?xml version="1.0" encoding="UTF-8"?>
<server>
<mbean code="org.jboss.cache.TreeCache" name="jboss.cache:service=TreeCache">
<attribute name="IsolationLevel">REPEATABLE_READ</attribute>
<!--如果需要集群应该使用REPL_ASYNC或REPL_SYNC,前者是异步复制,而后者是同步复制-->
<attribute name="CacheMode">REPL_SYNC</attribute>
<attributename="ClusterName">clumsterName</attribute>
<attribute name="ClusterConfig">
<config>
<!--在这里配置Jgroup的相关属性,特别要注意的是mcast_addr,这是一个多播地址,这里使用224.0.0.1,是网络中所有支持多播的地址(今天又试了一下,发现可以直接指定有效的多播地址,系统会自动注册这个地址) bind_addr是本机的IP-->
<UDP mcast_addr="224.0.0.1" mcast_port="45566" ip_ttl="64" ip_mcast="true" mcast_send_buf_size="150000" cast_recv_buf_size="80000"
ucast_send_buf_size="150000" ucast_recv_buf_size="80000" loopback="false" bind_addr="192.168.0.2"/>
<PING timeout="2000" num_initial_members="3" up_thread="false" down_thread="false"/>
<MERGE2 min_interval="10000" max_interval="20000"/>
<FD shun="true" up_thread="true" down_thread="true"/>
<VERIFY_SUSPECT timeout="1500"  up_thread="false" down_thread="false"/>
<pbcast.NAKACK gc_lag="50" retransmit_timeout="600,1200,2400,4800"
up_thread="false" down_thread="false"/>
<pbcast.STABLE desired_avg_gossip="20000" up_thread="false" down_thread="false"/>
<UNICAST timeout="600,1200,2400" window_size="100" min_threshold="10" down_thread="false"/>
<FRAG frag_size="8192" down_thread="false" up_thread="false"/>
<pbcast.GMS join_timeout="5000" join_retry_timeout="2000"
shun="true" print_local_addr="true"/>
<pbcast.STATE_TRANSFER up_thread="false" down_thread="false"/>
</config>
</attribute>

<attribute name="MaxCapacity">20000</attribute>
<attribute name="InitialStateRetrievalTimeout">20000</attribute> 
<attribute name="SyncReplTimeout">10000</attribute>
<attribute name="LockAcquisitionTimeout">15000</attribute>
<attribute name="LockLeaseTimeout">60000</attribute>
<attribute name="EvictionPolicyClass">org.jboss.cache.eviction.LRUPolicy</attribute> 
<attribute name="EvictionPolicyConfig">
<config>
<attribute name="wakeUpIntervalSeconds">15</attribute> 
<region name="/_default_">
<attribute name="maxNodes">5000</attribute> 
<attribute name="timeToIdleSeconds">1000</attribute> 
</region>
</config>
</attribute>
</mbean>
</server>
分享到:
评论

相关推荐

    Hibernate Jboss cache

    - **基本配置**:通过`hibernate.cfg.xml`或`persistence.xml`等配置文件指定Hibernate使用Jboss Cache作为二级缓存提供商。 - **指定`RegionFactory`实现**:配置中需要明确指出使用的是Jboss Cache提供的`...

    用JBoss的TreeCache作为Hibernate的二级缓存

    JBoss TreeCache是JBOSS组织提供的一个分布式的缓存解决方案,特别适合在集群环境中作为二级缓存使用。它支持数据的分布式存储和同步,可以有效提高多节点应用的性能和数据一致性。 在实现这个功能时,我们需要做...

    Hibernate二级缓存的应用

    - `jboss-logging-3.1.0.GA.jar`: 提供日志服务,与Hibernate一起使用。 总之,理解并熟练运用Hibernate的二级缓存,对于优化Java EE应用的性能至关重要。正确配置和管理缓存,可以显著提升系统响应速度,同时降低...

    Hibernate 2nd-level cache: JBoss Caching 配置与注意事项

    本文将深入探讨如何配置Hibernate使用JBoss Caching作为二级缓存,并提醒你在实现过程中需要注意的一些关键点。 **一、Hibernate 二级缓存概念** 在Hibernate中,一级缓存是Session级别的,每个Session都有一个...

    Jboss下hibernate整合EJB

    - 编写`hibernate.cfg.xml`配置文件,配置数据库连接信息、方言、缓存等。 - 创建实体类,并使用Hibernate注解(@Entity, @Table等)定义其与数据库表的关系。 3. **编写EJB** - 创建会话Bean,实现业务逻辑。在...

    Hibernate缓存机制

    #### 二、缓存使用注意事项 **2.1 效率问题** - 使用Hibernate缓存需要注意效率问题,尤其是在进行更新操作时: - 执行`save()`、`update()`、`saveOrUpdate()`等操作时,如果使用`load()`、`get()`、`list()`、`...

    Jboss6.0.0 M4配置jndi和hibernate

    总结,配置JBoss 6.0.0 M4中的JNDI和Hibernate,涉及到了数据源的创建、Hibernate的配置以及如何在应用程序中使用这些配置。理解并掌握这些知识点对于构建基于Java EE的分布式企业应用至关重要。通过合理配置,我们...

    hibernate使用的jar包

    10. **jboss-transaction-api_1.1_spec-1.0.0.Beta1.jar**:这是JBoss提供的JTA 1.1规范实现,对于使用JBoss应用服务器的项目来说,这个jar包是必需的。 以上就是Hibernate 3.3.2版本需要引入的jar包及其功能解释。...

    hibernate3全部jar包:hibernate3.jar.zip 下载

    使用Hibernate3时,开发者首先需要配置Hibernate的XML配置文件(通常是hibernate.cfg.xml),其中包含了数据库连接信息、方言设置、缓存策略等。然后,通过SessionFactory创建Session对象,Session是与数据库交互的...

    hibernate-release-4.3.1.Final.zip

    Hibernate是Java开发中广泛使用的对象关系映射(ORM)工具,它允许开发者用面向对象的方式来操作数据库,从而简化了数据持久化的复杂性。这个版本可能是Hibernate的稳定版本,标记为"Final"意味着它经过充分测试,...

    hibernate caching

    - **JBoss TreeCache (org.hibernate.cache.TreeCacheProvider)**:一个基于 JBoss 的分布式缓存框架。 #### 五、查询级缓存 (Query-level Cache) 查询级缓存是另一种缓存技术,它专门用于缓存查询结果,而不是...

    Hibernate框架全部jar包

    2. **jbosscache-core-3.2.1.GA.jar**:JBoss Cache是一个高性能、可扩展的缓存解决方案,它被Hibernate用作二级缓存。在这个版本中,它可能提供了事务支持和集群缓存功能。 3. **infinispan-core-4.1.0.CR1.jar**...

    hibernate4.3.11所需jar包

    3. **配置**: Hibernate的使用通常需要一个`hibernate.cfg.xml`配置文件,其中定义了数据库连接参数、方言、缓存策略、实体类等信息。 4. **实体类和映射**: Hibernate通过实体类来映射数据库表,实体类上使用注解...

    二级缓存详解

    在JTA环境中使用读/写缓存时,需要指定`hibernate.transaction.manager_lookup_class`以告知Hibernate如何查找事务管理器。 在使用二级缓存时,需要注意缓存同步和失效的问题,因为缓存中的数据可能与数据库中的...

    Hibernate 3.2 Libraries

    8. **jboss-cache-1.4.1.GA.jar**:JBoss Cache是一个分布式缓存解决方案,它被Hibernate用作二级缓存机制,以提高数据访问性能。 9. **jboss-logging-3.1.0.CR2.jar**:这是JBoss的日志框架,用于记录Hibernate...

    java中的缓存.pdf

    总结起来,文档深入探讨了Java中缓存技术的多个方面,包括Hibernate框架中的缓存使用、不同缓存策略的实现、本地缓存与分布式缓存的区别和配置、以及Java缓存技术在企业应用中的实际应用。这些知识对于Java开发者来...

Global site tag (gtag.js) - Google Analytics