如何使用Oracle Coherence创建分布式远程集群

时间:2015-10-21 11:44:14

标签: java caching datagrid distributed-caching oracle-coherence

我想为我的应用程序使用 Oracle Coherence作为分布式远程集群(具有多个缓存)应用程序可以使用TCP-Extend策略连接此远程集群。 / p>

缓存可能包含:

1。) [数据库缓存] :数据库记录(如L2缓存)

2。) [自填充缓存] :使用从某个商店提取的数据填充缓存。     填充后,只有网格/群集才能提供请求。

我正在考虑实现这一目标的两种方法之一:

1。)在群集模式下使用coherence服务器。(使用内置http服务器部署,     可能是玻璃鱼)。

2。)在群集模式下使用与weblogic的一致性

所有群集节点都将位于不同的计算机上以形成分布式缓存。 应用程序可以使用 TCP-Extend Client 连接到此远程群集/网格,并使用所需数据的缓存名称。

哪种方法很好,为什么这样的要求..?

还有其他更好的方法......?

1 个答案:

答案 0 :(得分:0)

以下是用例的优缺点:

1)在群集模式下使用coherence服务器
优点:

  • 易于开发和单元/集成测试,因为无需在开发人员和构建计算机上安装Weblogic。

缺点:

  • Coherence群集的管理和监控将是一项挑战,因为您需要弄清楚如何将Coherence群集节点与Glassfish集成。虽然L2缓存很简单,但有关于如何将Coherence * Web与Glassfish集成的文档,这仅适用于Web会话缓存,并未涵盖 [自填缓存] 用例。

  • Oracle建议您disable local storage for Extend-Proxy server nodes这意味着您需要将一些JVM作为启用Glassfish + Coherence存储的节点和其他JVM作为Extend-Proxy存储禁用节点。您可能需要提供自定义脚本/工具来管理和监控这些不同的节点。

2)在群集模式下使用与Weblogic的一致性。
优点:

    使用WLAdmin控制台可以轻松地在Test和Prod env中使用
  • Administration and Monitoring of Coherence cluster
  • 内置支持群集存储和Extend-Proxies。使群集上/下扩展变得非常容易。
  • 支持GAR归档格式,可以轻松部署多个一致性应用程序并独立管理其生命周期。

缺点:

  • 需要在开发人员/构建计算机上安装Weblogic。您可以通过将应用程序打包为GAR归档文件来避免安装Weblogic,并通过将gar文件路径传递给DefaultCacheSever类来在开发人员和单元/集成测试计算机上以独立模式部署它:

java -server -Xms512m -Xmx512m -cp APPLICATION_HOME\config;COHERENCE_HOME\lib\coherence.jar com.tangosol.net.DefaultCacheServer D:\example\MyGAR.gar

使用Weblogic工具确实可以帮助操作人员管理集群并为开发人员带来一些好处。