2016-05-30 85 views
0

我想配置一个WebLogic 12cR2集群以支持分布式数据缓存和应用程序跨串行集群节点。访问Coherence缓存的数据跨WebLogic集群层(数据缓存/ EJB/Servlet)

集群拓扑:

1. Three separated weblogic clusters: 
    a. Cluster-jpa (local storage enabled, used to hold distributed data cache, it is JPA back mapped to PostgreSQL database - data tier), 
    b. Cluster-ejb (local storage disabled, used to hold business application (EJBs) - application tier) 
    c. Cluster-web (Coherence Web Local storage enable, used to hold and replicate web session, it is servlet cluster - web tier) 
2. One Coherence Cluster, name: Coherence-cluster, configured as multicast (clustering mode). Three separated WebLogic clusters (jpa, ejb and web) were added to coherence cluster as members. 
3. Two WebLogic managed servers configured: 
    a. JPAServer, targeted to Cluster-jpa cluster, as Cluster-jpa was backboned with Coherence-Cluster, it is a managed coherence server as well. This managed server was used to hold Coherence Application (data tier), a ***.gar was deployed on this server, distributed cache objects and near cache was configured and works well. 
    b. EJBServer, targeted to Cluster-ejb cluster, as Cluster-ejb was backboned with Coherence-Cluster as well, it is an other managed coherence server. This managed server will be used to hold WebLogic JavaEE applications (EJBs in ***.ear format) as separated application tier (in application cluster) to consume distributed coherence data cache to provide high performance and high available business logic service. I'm having difficult to configure EJB application (***.ear) now. I followed oracle developing guide to develop a JEE application and embed the cache definition gar file into the lib directory. But unfortunately, I didn't get it work. The issue maybe caused by: EJBServer stay in Cluster-ejb cluster but JPAServer stay in Cluster-jpa cluster. 
4. Two or more domain partition configured: 
    a. Couple of virtual targets were defined and target to Cluster-web 
    b. Couple of Domain partitions were defined and targeted to virtual targets, those domain partitions were used to hold web applications (servlet tier). Coherence will be used to hold and replicate web session to support failover. Web tier will access Coherence data cache through Application tier (This part is under developing.) 

从WebLogic 12cR2仍然是相当新的,无法找到很多很好的例子和教程。有没有人可以分享一些有关开发经验的想法?

回答

0

我最近部署了一个使用最新Coherence版本[12c R2]的应用程序。现在就是关于GAR文件。

此博客文章,帮助我学习曲线,我认为值得一看。

另外,我上传了一个示例GAR文件在我的网站上,所以你可以查看它并从there开始。

+0

感谢您的评论。 My Coherence管理缓存服务器(数据层中的一致性应用程序,针对weblogic群集 - Cluster-jpa和Coherence群集主干)运行良好。我很难从应用层(包含***。gar的EJB应用程序)访问其他weblogic群集(定位到Cluster-ejb和与Coherence群集相同的骨干)的缓存。 –

+0

哦..我明白了......如果你想使它像今天一样工作,你应该让你的EJB应用成为你希望与之交互的COH集群的一员。也许您可以尝试将您的EJB应用程序添加为您要连接的COH群集的WKA。 另一种方法是ExtendedClient *方法。将您的EJB应用程序转变为COH群集的有效实时客户端(套接字样式)。 –

+0

是的。我的EJB应用程序(***。ear包含***。gar)部署在Weblogic托管服务器(EJBServer)上,EJBServer是WebLogic集群(Cluster-ejb)的成员,Cluster-ejb是Coherence集群相干性群集)。我的Coherence应用程序(***。gar)部署在缓存服务器(JPAServer)上,JPAServer是其他WebLogic Cluster(Cluster-jpa)的成员,Cluster-jpa也是Coherence Cluster(Coherence-cluster)的成员。这意味着EJB和GAR共享相同的COH集群。 –