[Logo] Terracotta Discussion Forums (LEGACY READ-ONLY ARCHIVE)
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 
[Expert]
关于不同web程序共享root的问题  XML
Forum Index -> Terracotta 中文社区
Author Message
eric.sun

jedi

Joined: 10/02/2008 09:18:42
Messages: 123
Offline

两个不同的web程序 我们共享的主要是hibernate的二级缓存 ehcache
Code:
      <app-groups> 
         <app-group name="webapp-group"> 
           <web-application>web1</web-application> 
           <web-application>web2</web-application> 
           <named-classloader>Tomcat.Catalina:localhost:/web1</named-classloader> 
         </app-group>


在terracotta的文档中,
http://www.terracotta.org/web/display/docs/Configuration+Guide+and+Reference

Code:
<app-groups>
       <app-group name="ac">
         <web-application>AppA</web-application>
         <web-application>AppC</web-application>
       </app-group>
       <app-group name="bd">
         <web-application>AppB</web-application>
         <web-application>AppD</web-application>
       </app-group>
     </app-groups>


两个web共享并不需要设置named-classloader,在我们的应用中一旦删除named-classloader,web2就会报错
Code:
java.lang.ClassNotFoundException: No registered loader for description: %%Tomcat.Catalina:localhost:/web1, trying to load org.hibernate.cache.


上述情况出现在web1,web2驻留在不同的主机,如果我在同一个主机不同的jvm中测试,named-classloader设置与否都不影响正常运行。


lima

consul
[Avatar]
Joined: 06/22/2009 10:12:31
Messages: 361
Offline

Eric你好!
我现在不太明白你们的系统架构,以及要用Terracotta共享的信息到底是什么。

app-groups主要是用于给web应用共享session使用的,或者让web app跟独立的Java app共享数据用的。跟Hibernate(tim-hibernate)没有关系。而tim-hibernate跟EHCache也没有关系。

我想先了解清楚你是要共享EHCache,还是Terracotta的Hibernate二级缓存,还是你们自己用EHCache配置的hibernate缓存?


谢谢!

lima
eric.sun

jedi

Joined: 10/02/2008 09:18:42
Messages: 123
Offline

我们需要各个级别的我现在不太明白你们的系统架构何要用Terracotta共享的信息到底是什么。
 

我们用Terracotta共享的信息有几个层次,
1. Tomcat web session集群肯定是需要的
2.Call Center客户维护系统和另外的批处理系统需要和其他系统之间共享共享hibernate的二级缓存。
Call Center也是web程序,肯定不需要和外部web共享session,但是二级缓存的共享肯定是需要的,批处理系统是standalone系统,也是需要共享二级缓存。

以上应该是当前最基本的需求,其他application级别其他collection的共享也会需要。

app-groups主要是用于给web应用共享session使用的,或者让web app跟独立的Java app共享数据用的。跟Hibernate(tim-hibernate)没有关系。
而tim-hibernate跟EHCache也没有关系。
我想先了解清楚你是要共享EHCache,还是Terracotta的Hibernate二级缓存,还是你们自己用EHCache配置的hibernate缓存?
 

可能我表达的不够清楚,我们现在使用Ehcache1.3做为Hibernate的二级缓存,应用程序不直接使用ehcache用着调用ehcache API
 
Forum Index -> Terracotta 中文社区
Go to:   
Powered by JForum 2.1.7 © JForum Team