-
两步操作如何用ActiveMQ来确保顺序?0
现在有两个系统A和B, 某项业务里有这么个场景:系统A要给系统B发送两条数据data1和data2,这两条数据的发送是在同一个事务中, 要求同一事务中data1比data2先在B系统中处理。 如何用ActiveMQ来实现这个要求?
现在想到的方案有下面四个:
1, 给发送data2数据的msg加延迟。
2, 给发送data1数据的msg提高优先级。
3, 用一个单独的msg把data1和data2发送出去, 让consumer自己决定确保data1和data2的顺序。
4, 能不能直接利用队列的先进先出来保证两条数据的顺序?而不再额外加新的设置。 也就是用同一个producer先发送data1,发送完成后,再发送data2.
偶是ActiveMQ方面的新手, 对它的编程模式还不是很熟悉, 请大家来看下上面我列的四个方案的可性行,以及在性能上的影响。
问题补充:用http://activemq.apache.org/message-groups.html和http://activemq.apache.org/exclusive-consumer.html, 好像都能实现。2012年8月24日 10:40
相关推荐
在Windows系统上搭建ActiveMQ集群是一项关键的任务,它涉及到分布式消息传递系统的设计和优化。ActiveMQ是Apache软件基金会...如有更多问题,可参考提供的`activeMQ使用文档.docx`和实际操作中遇到的问题进行深入学习。
为了确保ActiveMQ的正确使用和开发,需要遵守一定的开发规范和方案。 规则定义 在使用ActiveMQ之前,需要定义好规则,例如连接池的使用、消费者监控等。连接池的使用可以提高系统的性能和可靠性,而消费者监控可以...
⒊ 对Spring的支持,ActiveMQ可以很容易内嵌到使用Spring的系统里面去,而且也支持Spring2.0的特性 ⒋ 通过了常见J2EE服务器(如 Geronimo,JBoss 4,GlassFish,WebLogic)的测试,其中通过JCA 1.5 resource adaptors的...
在Choice元素中,我们可以使用and、or操作符、正则表达式等来进行条件判断。例如: ```xml ${in.header.odd} or ('1','0') <to uri="activemq:toEndpoint" id="to2"/> ``` 此外,我们还可以在from标签中使用...
### ActiveMQ 使用手册知识点概述 #### 一、ActiveMQ 原理与基本构件 **1.1 连接工厂(Connection Factory):** - **定义:** 连接工厂是客户端用来创建连接的对象。在ActiveMQ中,`ActiveMQConnectionFactory` 类...
本压缩包“activeMQ收发工具.rar”包含了用于测试和操作ActiveMQ的实用工具,主要是一个jar包文件,方便用户在安装了Java Development Kit (JDK) 的环境中运行。 ActiveMQ收发工具的核心功能是通过Java应用程序发送...
1. **JMS、XML和异构企业--使用JMS和XML来促进企业应用的互操作性.doc** - 这份文档可能深入探讨了JMS如何与XML(可扩展标记语言)结合,以支持不同系统间的互操作性。XML常用于数据交换,因为它具有自我描述性和...
例如,ActiveMQ允许设置WebSocket连接的心跳间隔,以确保连接的活跃性。另外,如果WebSocket连接意外断开,客户端需要有一个重连策略,以恢复与ActiveMQ的通信。 至于压缩包文件"activemq_ws_接收消息",其中可能...
总的来说,"activemqactivemq"这个主题涵盖了使用ActiveMQ进行消息收发的核心知识,通过理解和实践提供的代码示例,可以深入理解ActiveMQ的工作原理和使用方法。在实际项目中,合理利用消息中间件如ActiveMQ,能够极...
本文将深入探讨如何在Spring环境中使用ActiveMQ来实现消息的发送与接收,以提高系统的可扩展性和解耦性。 首先,我们需要了解Spring对ActiveMQ的支持。Spring提供了`spring-jms`模块,它包含了一组丰富的API和配置...
本初学使用DEMO将带你走进ActiveMQ的世界,通过队列(Queue)和主题(Topic)两种消息模型来了解其基本用法。 1. **ActiveMQ简介**: - ActiveMQ 是Apache软件基金会的一个项目,它提供了一个跨语言、跨平台的消息...
Apache ActiveMQ是开源的、基于Java消息服务(JMS)的应用服务器,它是Apache软件基金会的一部分。这个名为"apache-activemq-5.17.3"的压缩包包含了ActiveMQ的5.17.3版本,这是一个稳定且功能丰富的发布版本。在深入...
在C++中,我们可以使用ActiveMQ的C++ API来创建生产者和消费者对象,进而实现消息的发送和接收。 **安装和配置ActiveMQ** 在开始开发之前,需要下载并安装ActiveMQ。确保选择正确的版本,以匹配你的开发环境。安装...
本篇文章将深入探讨如何使用ActiveMQ进行JMS开发,以及ActiveMQ的核心特性。 一、Java消息服务(JMS) JMS是一种为分布式环境设计的消息传递规范,它定义了生产、存储和消费消息的标准接口。通过JMS,应用程序可以...
**ActiveMQ深度解析** ...通过本讲义的学习,读者将能够全面了解ActiveMQ的基本原理和操作,为在实际项目中应用ActiveMQ打下坚实的基础。在实践中,不断探索和优化,才能充分发挥ActiveMQ在复杂分布式系统中的价值。
在Linux环境下,Apache ActiveMQ是一个广泛使用的开源消息代理和队列服务器,它是Java Message Service (JMS) 的实现,能够处理大量的并发消息传递。ActiveMQ提供了高可用性、可扩展性和稳定性,使得它成为分布式...
2. **Spring JMS模块**:Spring框架的JMS模块提供了一个抽象层,使得开发者无需直接操作JMS API,而是通过Spring的模板和监听器接口来处理消息。这提高了代码的可测试性和可维护性。 3. **ActiveMQ配置**:在Spring...
在实际应用中,开发者需要注意WebSocket的安全性,比如使用WSS(WebSocket over SSL/TLS)来确保数据传输的安全,以及对连接的管理和错误处理,确保系统的稳定性和可靠性。同时,为了优化性能,可能还需要考虑连接池...
硬件配置包括服务器的CPU、内存和磁盘性能,软件环境包括操作系统、JDK版本、ActiveMQ版本以及JMeter版本等。 2.4 网络环境 网络环境的稳定性和带宽限制可能影响消息传递速度,因此,测试时需确保网络连接的可靠性...