`

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

阅读更多

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

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

GlassFish集群环境

IP HostName 实例 ClusterID
192.168.1.101 das.localdomain
192.168.1.102 node1.localdomain instance1 cluster1
192.168.1.104 node2.localdomain instance2 cluster1

 

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

如图:


也可以通过命令来查看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主机】->【新建】


 

也可通过命令行进行添加

[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消息服务】


等效的命令行

[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】->【物理目的地】点击【新建】


也可通过在域管理服务器(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资源】->【连接工厂】->【新建】



  注意:从页面底部的可用目标列表中选择cluster1群集,然后单击“添加”。


等效的命令行:

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

 

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

 

3.创建 JMS 目标资源

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

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



 注意:从页面底部的可用目标列表中选择cluster1群集,然后单击“添加”。


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

  • 大小: 7.3 KB
  • 大小: 10.1 KB
  • 大小: 19.9 KB
  • 大小: 7.4 KB
  • 大小: 6.7 KB
  • 大小: 5.2 KB
  • 大小: 9.1 KB
2
1
分享到:
评论

相关推荐

    openMq基本命令使用

    本文将详细介绍OpenMQ的基本管理命令,包括安装、集群配置、管理命令以及查看和操作队列与主题。 首先,让我们从安装开始。在Linux系统上安装OpenMQ时,通常需要下载安装文件,如`openmq4_3-installer-Unix.zip`,...

    openmq-4.4.2

    OpenMQ,全称为Java Message Service (JMS) 提供商,是Oracle公司的一款开源消息中间件,用于在分布式系统中传递消息。OpenMQ 4.4.2是该软件的一个特定版本,它提供了稳定且高性能的消息传递服务。在这个版本中,...

    habari-openmq-20190131-src.zip

    标题中的"habari-openmq-20190131-src.zip"表明这是一个源代码压缩包,发布日期为2019年1月31日,名为“habari”的项目,它与OpenMQ相关。OpenMQ是Oracle的开源消息中间件,用于处理应用程序之间的消息传递,提供...

    OpenMQ_install_FCS

    这些依赖关系详细记录在《Sun Java System Message Queue 4.3 发布说明》中的“组件依赖性”部分,请在安装 OpenMQ 4.3 之前检查这些软件依赖项。 #### 硬件需求 为了安装 OpenMQ 4.3,您的系统应满足以下各节规定...

    openmq 编译依赖包

    在实际应用中,OpenMQ还可能与其他系统集成,如应用服务器、数据库等,这时可能需要额外的依赖包。同时,开发者也需要关注OpenMQ的配置,如设置消息存储、安全性、性能优化等,这些都是基于这些基础依赖包之上实现的...

    habari-openmq-6.1-installer.exe

    habari-openmq-6.1-installer.exe

    chef-glassfish:管理GlassFish的食谱

    glassfish食谱将安装和配置GlassFish应用程序服务器以及与GlassFish应用程序服务器捆绑在一起的OpenMQ消息代理。 该菜谱还定义了用于创建和配置GlassFish应用程序域和OpenMQ代理实例的资源。 项目中提供了一个带有...

    openmq:OpenMQ

    在`openmq-master`这个压缩包文件中,可能包含了OpenMQ的源代码、构建脚本、文档和其他资源。你可以通过查阅这些文件来深入了解OpenMQ的内部工作原理,学习如何配置和部署OpenMQ服务器,以及如何编写使用JMS的Java...

    将Sun的Open Message Queue与Spring集成

    然而,Sun的OpenMQ作为一种同样强大的消息中间件解决方案,在特定场景下也有着广泛的应用。OpenMQ是Sun Java System Message Queue的一个开源版本,拥有企业级、可扩展性以及成熟稳定的特点。它提供了一套完整的JMS...

    rocket 以及客户端相关资源

    - OpenMQ:对于非Java应用,可以通过Open Message Client (OMC) 进行集成。 - SDK支持:还有Python、Go、.NET等多种语言的SDK可供选择。 6. **管理工具**: - RocketMQ提供的管理工具可以帮助监控、管理和调试...

    十种MQ的技术选型详细对比.docx

    这些系统在企业级应用中扮演着重要的角色,用于解耦服务、提高系统的可扩展性以及保证消息的可靠传输。 #### 支持的协议对比 | MQ系统 | 支持的协议 | |----------|-------------------------------------| | ...

    QBrowser for GlassFish JMS / WebLogic MQ-开源

    为 OpenMQ (GlassFish JMS) / Oracle WebLogic MQ 开发基于队列消息管理 gui 的工具。 工具名称为 QBrowserV2。 它旨在实现新消息创建/发送、删除消息、转发消息、订阅主题等功能。

    大型系统中使用JMS优化技巧–Sun OpenMQ

    在传送过程中,系统处理JMS消息分为以下两类: ■ 有效负荷消息,由生成方发送给使用方的消息。 ■ 控制消息,代理与客户端运行时环境之间传送的私有消息,用于确保有效负荷消息成功传送和控制跨连接的消息流。 ...

    ActiveMQ.zip

    课程内容可能涵盖了ActiveMQ的基本概念、配置、使用示例、高级特性,以及如何在实际项目中应用ActiveMQ进行系统间通信和解耦。 5. **消息中间件之ActiveMQ.mmap** "mmap"文件可能是一个内存映射文件,用于快速读取...

    mq产品对比

    - **ZeroMQ**不支持负载均衡,这可能会限制其在高负载环境中的应用。 **12. 管理界面** - **RabbitMQ**提供了较好的管理界面,这对于监控和管理MQ系统的运行状态非常有帮助。 - 其他MQ产品如**ActiveMQ**和**...

    RocketMQ消息队列资料

    4. **轻量级框架**:RocketMQ的客户端库小巧,易于集成到各种应用中,同时提供了丰富的API,开发者可以快速上手并实现复杂的消息处理逻辑。 5. **灵活性**:RocketMQ支持多种部署模式,如集群模式、广播模式等,...

    rabbitMQ文档

    **MQ**,即**Message Queue**(消息队列),是一种在分布式系统中实现进程间通信的技术。消息队列本质上是一个先进先出(FIFO)的数据结构,用于存储消息直到被消费。这种技术允许不同组件之间解耦,提高系统的灵活...

    各种消息队列对比

    消息队列是一种应用系统之间进行异步通信的中间件,它的核心功能是实现不同应用之间的信息传递,它在软件工程中常用于解耦服务、提高系统伸缩性以及保证消息传递的可靠性和顺序性。在当今分布式系统架构中,消息队列...

    activeMq Api 文档

    ActiveMQ是Apache软件基金会开发的一款开源消息中间件,它遵循开放消息中间件协议(Open Message Broker API,简称OpenMQ API),提供高性能、可伸缩、可靠的消息传递服务。API文档是开发者理解和使用ActiveMQ的关键...

    stomp-rs为Rust编程语言提供了完整的STOMP 1.2客户端实现。-Rust开发

    这使得用Rust编写的程序可以与消息队列服务进行交互,例如ActiveMQ,RabbitMQ,HornetQ和OpenMQ。 连接订阅发送确认(自动/客户端/客户端个人)交易收据断开心跳信号踩踏程序的API尚不稳定,并且可能在v1.0之前波动...

Global site tag (gtag.js) - Google Analytics