示例简介
JBoss微容器(JBoss Microcontainer)是第二代JBoss内核架构,该架构集合第一代JBoss内核架构(纯JMX MBean)优点,加入了POJO Bean的概念,是一个轻量级的容器用来管理POJOs以及他们的部署,配置等。JBoss AS 6,JBoss AS 5都是基于这一架构。详细参照http://www.jboss.org/jbossmc。
根据前面示例,JBossCache即可以独立使用/在程序里进行部署(JBossCache 复制示例),也可以通过JBoss微容器进行部署,本示例演示通过通过JBoss微容器部署JBossCache,并演示通过JBossCache在集群中复制数据。本示例类似JBoss 系列二十二:JBossCache 复制示例,区别在于本示例将复制程序需要部署与JBoss,符合标准Java企业应用标准。
GWT是GoogleWeb Toolkit的缩写,GWT允许开发人员使用 Java 编程语言快速构建和维护复杂但性能高的 JavaScript 前端应用程序,从而降低了开发难度,加快了开发速度,详细关于GWT请参照http://www.gwtproject.org/,本示例使用GWT构建示例用户界面。
运行本示例之上需要两台机器,两台机器分别安装JBoss AS 5(参照 软件安装及资料下载),基于两台JBoss,我们需要做JBossCache相关的配置,本且本示例应用程序需要部署到两台JBoss之上。本示例架构大致如下图所示:
JBossCache部署于JBoss微容器之上(JBoss微容器通过JBoss启动);JBossCache与局域网中其他节点构成集群缓存,共享数据;EJB服务提供操作JBossCache的接口对缓存数据进行增、删、改、查;GWT服务端通过EJB服务获取缓存中数据;GWT客户端展示GWT服务端获取的数据给终端用户。
示例运行
编译打包生成部署文件
根据 JBoss Cluster Framework Demo 介绍 所示的方法,任意 从SourceForge下载或 编译生成DEMO_HOME, 部署文件jbosscache-jboss-ear.ear位于DEMO_HOME/dist目录下。启动部署JBossCache于JBoss微容器
我们通过启动JBoss AS 5来启动JBoss微容器,为了简化我们在同一台物理集群上绑定两个网卡来模拟两台物理机器。安装完JBoss AS 5后,到JBOSS_HOME/server目录下将all示例拷贝两份,模拟两个JBoss示例,如下:
cp -r all/ node1
cp -r all/ node2
在启动JBoss示例之前我们首先需要配置JBossCache。分别编辑node1和node2的deploy/cluster/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans.xml文件,在newConfigurations属性<map>中添加自定义的JBossCache:
<bean name="CacheConfigurationRegistry" class="o