首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

OpenMQ集群在GlassFish中的施用-配置篇

2012-08-22 
OpenMQ集群在GlassFish中的应用---配置篇在《OpenMQ集群在GlassFish中的应用---安装篇》中我们完成了OpenMQ

OpenMQ集群在GlassFish中的应用---配置篇

在《OpenMQ集群在GlassFish中的应用---安装篇》中我们完成了OpenMQ集群的建立,接下来介绍一下如何在GlassFish集群中配置和使用OpenMQ集群提供的JMS服务。

首先,按照《GlassFishV2 集群实现》中的步骤建立一个GlassFish集群环境。

GlassFish集群环境

IPHostName实例ClusterID192.168.1.101das.localdomain192.168.1.102node1.localdomaininstance1cluster1192.168.1.104node2.localdomaininstance2cluster1

?

GlassFish集群建立之初,集群中会存在一个默认的JMS主机(default_JMS_host),进入das.localdomain:4848控制台 点击【配置】->【cluster1-config】->【java消息服务】->【JMS主机】

如图:


OpenMQ集群在GlassFish中的施用-配置篇

也可以通过命令来查看cluster1集群中的JMS主机

[root@das glassfish]# bin/asadmin list-jms-hosts cluster1

default_JMS_host
已成功执行命令 list-jms-hosts。

?

设置GlassFish集群JMS服务

?

首先,删除涉及由域管理服务器(das.localdomain)启动的代理的默认 JMS 主机,通过控制台界面点击删除就可以了,也可以通过命令行进行删除。

[root@das glassfish]# bin/asadmin delete-jms-host --target cluster1 default_JMS_host???????
已成功执行命令 delete-jms-host。

?

然后在集群中增加我们之前建立的OpenMQ集群中的主机。

【配置】->【cluster1-config】->【java消息服务】->【JMS主机】->【新建】


OpenMQ集群在GlassFish中的施用-配置篇

?

也可通过命令行进行添加

[root@das glassfish]# bin/asadmin create-jms-host --target cluster1 --mqhost mq1.localdomain --mqport 7676 --mquser admin --mqpassword admin broker1

?

[root@das glassfish]# bin/asadmin create-jms-host --target cluster1 --mqhost mq2.localdomain --mqport 7676 --mquser admin --mqpassword admin broker2

?

设置JMS服务类型为REMOTE

【配置】->【cluster1-config】->【java消息服务】


OpenMQ集群在GlassFish中的施用-配置篇

等效的命令行

[root@das bin]# ./asadmin set? cluster1.jms-service.type=REMOTE

?

启动GlassFish集群实例

?

注意:JMS 类型为 Remote 时,务必始终先启动Open MQ 代理,然后再启动GlassFish实例。否则GlassFish将无法启动。

?

地址列表行为 是指实例尝试连接JMS主机列表的行为priority表示顺序连接即尝试连接时总是从主机列表第一个主机开始,random表示随机连接即尝试连接时随机连接主机列表中的主机。

?

当GlassFish集群各个实例启动时会在Open Message Queue主机上打印连接日志,如:

[12/二月/2011:16:39:51 CST] [B1065]: 接受: guest@192.168.1.102:40013->jms:48539。计数:服务 =1 代理 =1

?

为GlassFish集群增加JMS资源

?

1.创建JMS物理目的地

创建一个名为MyQueue目的地类型为queue队列

【集群】->【cluster1】->【物理目的地】点击【新建】


OpenMQ集群在GlassFish中的施用-配置篇

也可通过在域管理服务器(das.localdomain)上通过命令行增加

[root@das bin]# ./asadmin create-jmsdest --desttype queue --target cluster1 MyQueue

?

JMS主机会输出如下日志:

[12/二月/2011:17:22:26 CST] [B1158]: 管理员已创建目的地 MyQueue [队列]

?

2.创建 JMS 连接工厂

创建一个名为jms/MyConnectionFactory的连接工厂

【资源】->【JMS资源】->【连接工厂】->【新建】


OpenMQ集群在GlassFish中的施用-配置篇
?注意:从页面底部的可用目标列表中选择cluster1群集,然后单击“添加”。


OpenMQ集群在GlassFish中的施用-配置篇

等效的命令行:

[root@das bin]# ./asadmin create-jms-resource --target cluster1 --restype javax.jms.ConnectionFactory jms/MyConnectionFactory

?

已成功执行命令 create-jms-resource。

?

3.创建 JMS 目标资源

创建一个名为jms/MyQueue的目标资源

【资源】->【JMS资源】->【目的地资源】->【新建】


OpenMQ集群在GlassFish中的施用-配置篇
?注意:从页面底部的可用目标列表中选择cluster1群集,然后单击“添加”。


OpenMQ集群在GlassFish中的施用-配置篇

经过以上操作之后,我们的GlassFish集群就可以使用Open Message Queue集群提供的外部JMS服务了,在下面的文章中会编写一个从目标jms/MyQueue读取消息的消息驱动Ben和一个单独向目标发送消息的客户端,来验证我们的集群工作环境。还会对服务可用性和数据可用性做一些说明。敬请期待

热点排行