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仍然是相當新的,無法找到很多很好的例子和教程。有沒有人可以分享一些有關開發經驗的想法?
感謝您的評論。 My Coherence管理緩存服務器(數據層中的一致性應用程序,針對weblogic羣集 - Cluster-jpa和Coherence羣集主幹)運行良好。我很難從應用層(包含***。gar的EJB應用程序)訪問其他weblogic羣集(定位到Cluster-ejb和與Coherence羣集相同的骨幹)的緩存。 –
哦..我明白了......如果你想使它像今天一樣工作,你應該讓你的EJB應用成爲你希望與之交互的COH集羣的一員。也許您可以嘗試將您的EJB應用程序添加爲您要連接的COH羣集的WKA。 另一種方法是ExtendedClient *方法。將您的EJB應用程序轉變爲COH羣集的有效實時客戶端(套接字樣式)。 –
是的。我的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集羣。 –