`
bartholomew4
  • 浏览: 11557 次
社区版块
存档分类
最新评论

ActiveMQ(四)

阅读更多

由于项目原因,很长时间没有更新了。今天本篇主要解释一些名词,为下一步的ActiveMQ的Queue使用奠定基础

 

在开始演示前先引入一些概念:

Q:ActiveMQ Queue中有哪些消息交互模式(传送模式)?

A:ActiveMQ遵循JMS标准分为:

1.PERSISTENT(持久性消息)

    这是 ActiveMQ 的默认传送模式,此模式保证这些消息只被传送一次和成功使用一次。对于这些消息,可靠性是优先考虑的因素。可靠性的另一个重要方面是确保持久性消息传送至目标后,消息服务在向消费者传送它们之前不会丢失这些消息。这意味着在持久性消息传送至目标时,消息服务将其放入持久性数据存储。如果消息服务由于某种原因导致失败,它可以恢复此消息并将此消息传送至相应的消费者。虽然这样增加了消息传送的开销,但却增加了可靠性。 

2.NON_PERSISTENT(非持久性消息) 

    保证这些消息最多被传送一次。对于这些消息,可靠性并非主要的考虑因素。  此模式并不要求持久性的数据存储,也不保证消息服务由于某种原因导致失败后消息不会丢失。

Q:如何设置消息交互模式(传送模式)?

A:在ActiveMQ中有2种方法来设置,分别适用于不同的场景。我更偏向于第一种处理方式,有利于消息的封装和统计。

1.在消息生产者中直接设置模式,

producer.setDeliveryMode(int deliveryMode);

此模式的适用于单一类型的消息生产者。

2.在每条消息中设置,

 

void send(Destination destination, Message message, int deliveryMode, int priority,long timeToLive); 

 

 

void send(Message message, int deliveryMode, int priority, longtimeToLive);

  其中 deliveryMode 为传送模式,priority 为消息优先级,timeToLive 为消息过期时间。

 

Q:想要使用自定义的Queue来管理消息,该如何做?

A:继承ActiveMQDestination并实现Queue(javax.jms包)接口

 

分享到:
评论

相关推荐

    ActiveMQ高并发处理方案

    #### 四、为高并发程序部署ActiveMQ 在部署支持高并发的ActiveMQ系统时,主要涉及三个方面:垂直扩展、水平扩展以及传输负载分流。 ##### 1. 垂直扩展 垂直扩展的目标是在单一的ActiveMQ实例上支持更多的连接和...

    activemq

    #### 四、CMS 概念 - **CMS 定义**:CMS 是一组 C++ API,用于创建、发送、接收和读取消息。它提供了一种与平台无关的方式,使得 C++ 应用程序可以与其他消息组件进行通信。 - **CMS 与 JDBC 类比**:CMS 类似于 ...

    activemq 配置说明与activemq入门讲解

    5. **消息类型**:ActiveMQ支持TextMessage、ObjectMessage、BytesMessage和MapMessage四种基本消息类型。 6. **消息持久化**:通过设置Message的持久化属性,可以在服务器重启后仍保留消息。这对于实现高可用性和...

    apache-activemq-5.9.0 下载

    3. **JMS支持**:ActiveMQ完全符合JMS 1.1规范,支持Message Queue、Topic、Temporary Queue和Temporary Topic四种类型。用户可以通过JMS API创建连接、会话、生产者、消费者并发送/接收消息。 4. **协议支持**:...

    CentOS安装Activemq图文教程

    四、配置端口 我们还需要开启端口,需要开启的端口是8161和61616。在终端输入以下命令: `setup` 然后,在setup界面中添加8161和61616端口。 五、测试Activemq 输入`http://localhost:8161/admin/`,以测试...

    ActiveMQ实践入门指南_ActiveMQ实践入门指南_源码

    四、ActiveMQ核心特性 1. 持久化:ActiveMQ支持消息持久化,即使服务器重启,消息也不会丢失。 2. 事务支持:JMS事务允许一次操作多个消息,确保数据一致性。 3. 路由与筛选:通过Virtual Topics和Filters实现复杂的...

    ActiveMQ学习笔记之四--启动嵌入式Broker(纯代码方式)

    在本篇ActiveMQ学习笔记中,我们将探讨如何通过纯代码方式启动一个嵌入式的Broker,这对于测试、开发或者快速原型构建非常有用。ActiveMQ是一个开源的消息代理,它遵循Java消息服务(JMS)规范,提供了高可靠性的...

    ActiveMQ安装和使用

    #### 四、与Spring框架整合 将ActiveMQ与Spring框架整合可以简化消息中间件的使用。主要步骤包括: 1. **引入依赖**:在项目中添加ActiveMQ的Maven依赖。 2. **配置连接工厂**:创建`ConnectionFactory` bean,...

    activeMq in action 使用activeMq开发JMS的简单讲述

    四、实例应用 例如,在电商系统中,订单处理可能涉及多个服务,如库存检查、支付验证等。ActiveMQ可以通过消息队列实现这些服务之间的异步通信,当订单创建后,生产者将订单信息发送到队列,库存服务和支付服务作为...

    ActiveMQ5.12.1 安装与配置.docx

    #### 四、测试验证 1. **创建队列** - 通过Web控制台创建一个名为`MyQueue`的队列。 - 发送一条消息到该队列,确保消息能够正确地持久化到数据库中。 2. **环境信息** - 操作系统: Linux Ubuntu 3.19.0-15-...

    activemq的简单配置

    #### 四、总结 通过以上介绍可以看出,ActiveMQ作为一款成熟的消息中间件,不仅能够提供稳定的消息传输服务,还具备丰富的功能和良好的性能表现。对于需要解决异步消息处理、高并发访问等问题的应用场景而言,...

    activemq5.5.1 Spring模板

    四、示例项目结构 在提供的"activemq服务器及spring简单模板项目"中,我们可以看到以下主要部分: - `pom.xml`:项目依赖管理,包含了ActiveMQ和Spring的相关依赖。 - `src/main/resources`:包含了Spring的配置文件...

    ActiveMq安装win7

    #### 四、访问 ActiveMQ 管理界面 成功安装并配置ActiveMQ后,可以通过浏览器访问其管理界面: - **访问地址**: `http://localhost:8161/admin/` - **用户名**: admin - **密码**: admin 通过上述步骤,您就可以...

    ActiveMq总结.docx

    #### 四、JMS规范介绍 JMS(Java Message Service)是Java平台中关于面向消息中间件的API,用于在两台计算机之间传递消息。JMS规范定义了一系列标准接口,以便开发者能够在不同的JMS实现之间进行互换。 ##### 4.1 ...

    ActiveMQ消息总线介绍

    #### 四、ActiveMQ的安装与配置 ##### 安装步骤 1. **下载**:从官方网站(http://activemq.apache.org/)下载最新版本的ActiveMQ。 2. **解压**:将下载的压缩包解压至期望的目录。 3. **运行**:通过命令行启动...

    ActiveMQ.zip

    **四、总结** Apache ActiveMQ以其强大的功能和灵活性,成为了众多企业级应用的消息传递首选。了解并熟练掌握ActiveMQ的使用,能够帮助开发者构建更稳定、更高效的分布式系统。无论是在微服务架构中还是在传统的...

    activemq新手大全

    **四、activemq使用场景** 适用于分布式系统中的解耦、异步处理、负载均衡、故障恢复等场景。例如,它可以用来在系统组件之间传递事件,减少直接依赖,提高系统的响应速度和容错能力。 **五、activemq整合spring**...

    消息队列activemq.zip

    四、ActiveMQ实战应用 在实际应用中,ActiveMQ常用于以下场景: - 微服务间的异步通信:微服务架构中,通过消息队列可避免直接调用导致的阻塞,提高系统响应速度。 - 数据同步:在分布式数据库或主从复制环境中,...

Global site tag (gtag.js) - Google Analytics