- 浏览: 1011238 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (826)
- 硬件 (8)
- 软件 (24)
- 软件工程 (34)
- JAVA (229)
- C/C++/C# (77)
- JavaScript (8)
- PHP (1)
- Ruby (3)
- MySQL (14)
- 数据库 (19)
- 心情记事 (12)
- 团队管理 (19)
- Hadoop (1)
- spring (22)
- mybatis(ibatis) (7)
- tomcat (16)
- velocity (0)
- 系统架构 (6)
- JMX (8)
- proxool (1)
- 开发工具 (16)
- python (10)
- JVM (27)
- servlet (5)
- JMS (26)
- ant (2)
- 设计模式 (5)
- 智力题 (2)
- 面试题收集 (1)
- 孙子兵法 (16)
- 测试 (1)
- 数据结构 (7)
- 算法 (22)
- Android (11)
- 汽车驾驶 (1)
- lucene (1)
- memcache (12)
- 技术架构 (7)
- OTP-Erlang (7)
- memcached (17)
- redis (20)
- 浏览器插件 (3)
- sqlite (3)
- Heritrix (9)
- Java线程 (1)
- scala (0)
- Mina (6)
- 汇编 (2)
- Netty (15)
- libevent (0)
- CentOS (12)
- mongod (5)
- mac os (0)
最新评论
-
kingasdfg:
你这里面存在一个错误添加多个任务 应该是这样的 /** * ...
Quartz的任务的临时启动和暂停和恢复【转】 -
kyzeng:
纠正一个错误,long型对应的符号是J,不是L。
Jni中C++和Java的参数传递 -
zhaohaolin:
抱歉,兄弟,只是留下作记录,方便学习,如果觉得资料不好,可以到 ...
netty的个人使用心得【转】 -
cccoooccooco:
谢谢!自己一直以为虚机得使用网线才可以与主机连接呢。。
主机网卡无网线连接与虚拟机通信 -
yuqilin001:
要转别人的东西,请转清楚点嘛,少了这么多类,误人子弟
netty的个人使用心得【转】
对于此类消息,其实就是指使用JMS中的发P2P(点对点)消息模型的消息,下面是一个简单的例子
消息发送者
- package com.googlecode.garbagecan.jmsstudy.activemq.queue;
- import org.apache.activemq.ActiveMQConnection;
- import org.apache.activemq.ActiveMQConnectionFactory;
- import javax.jms.*;
- public class Sender {
- public static void main(String[] args) throws JMSException {
- ConnectionFactory connectionFactory = new ActiveMQConnectionFactory( "tcp://localhost:61616" );
- Connection connection = connectionFactory.createConnection();
- connection.start();
- Session session = connection.createSession(false , Session.AUTO_ACKNOWLEDGE);
- Destination destination = session.createQueue("myQueue" );
- MessageProducer producer = session.createProducer(destination);
- producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT);
- while ( true ) {
- TextMessage message = session.createTextMessage();
- message.setText("message_" + System.currentTimeMillis());
- producer.send(message);
- System.out.println("Sent message: " + message.getText());
- try {
- Thread.sleep(1000 );
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- // session.close();
- // connection.stop();
- // connection.close();
- }
- }
消息接收者
- package com.googlecode.garbagecan.jmsstudy.activemq.queue;
- import org.apache.activemq.ActiveMQConnection;
- import org.apache.activemq.ActiveMQConnectionFactory;
- import javax.jms.*;
- public class Receiver {
- public static void main(String[] args) throws JMSException {
- ConnectionFactory connectionFactory = new ActiveMQConnectionFactory( "tcp://localhost:61616" );
- Connection connection = connectionFactory.createConnection();
- connection.start();
- Session session = connection.createSession(false , Session.AUTO_ACKNOWLEDGE);
- Destination destination = session.createQueue("myQueue" );
- MessageConsumer consumer = session.createConsumer(destination);
- consumer.setMessageListener(new MessageListener() {
- public void onMessage(Message message) {
- TextMessage tm = (TextMessage) message;
- try {
- System.out.println("Received message: " + tm.getText());
- } catch (JMSException e) {
- e.printStackTrace();
- }
- }
- });
- // session.close();
- // connection.stop();
- // connection.close();
- }
- }
分别运行两个类,就可以看到Sender发布的消息,Receiver都可以接受到。
发表评论
-
Advanced Message Queuing Protocol ( 3 ) 逻辑模型
2011-05-07 22:04 1167Sessions 建立在不同容器中的两个节点的链接必 ... -
Advanced Message Queuing Protocol ( 2 ) 逻辑模型
2011-05-07 22:04 966Nodes and Links 一个AMQP的网络包 ... -
Advanced Message Queuing Protocol ( 1 ) 概述
2011-05-07 22:03 1201The Advanced Message Queuing ... -
Apache Qpid (1) -- build
2011-05-07 22:02 1939http://qpid.apache.org/index.h ... -
ActiveMQ技术预研报告【转】
2011-04-22 14:44 1907ActiveMQ技术预研报告 研究部朱懋柱 1.文 ... -
ActiveMQ与MSMQ的异同【转】
2011-04-22 14:14 1910.NET下发送和接收ActiveMQ A:下载Act ... -
ActiveMQ在C#中的应用
2011-04-21 16:18 1195ActiveMQ 是个好东东,不必多说。ActiveM ... -
ActiveMQ实战之 Topic发布订阅消息【转】
2011-04-18 23:14 1188对于此类消息,其实就是指使用JMS中的发布订阅消息模型的消息, ... -
ActiveMQ实战(4):JMS的安全性【转】
2011-04-18 22:52 1226对于JMS服务的安全控制,ActiveMQ提供两种方式:简单授 ... -
ActiveMQ实战(3):Web控制台的安全性【转】
2011-04-18 22:52 1334安装好ActiveMQ后,其默认没有任何安全控制,任何人都可以 ... -
ActiveMQ实战(2):测试其是否正常工作【转】
2011-04-18 22:51 1201既然ActiveMQ安装好了并启动成功,接下来我们就编写一个测 ... -
ActiveMQ实战(1):安装与运行【转】
2011-04-18 22:45 1779ActiveMQ的项目主页:http://activemq.a ... -
[转] JMS开源比较
2011-03-30 23:46 1181Java开源JMS消息中间件 ... -
activemq5.2发送和接收BlobMessage简单实例
2011-03-29 23:45 1164package com.work.activemq ... -
ActiveMQ学习笔记----ActiveMQ和JBossMQ性能对比测试代码
2011-03-29 23:44 1221本文描述了对ActiveMQ进行性能测试的代码。性能测试用 ... -
ActiveMQ 实例
2011-03-29 23:21 10372009-06-24 ProducerTool.java ... -
activemq持久化配置,设置为主从模式(带复制的主从模式,应用mysql数据库)
2011-03-29 09:12 1818activemq持久化配置,设置为主从模式(带复制的主从模 ... -
ActiveMQ持久化消息的三种方式
2011-03-29 09:11 13621:前言 这一段给公司开发消息总线有机会研究A ... -
什么是JMS(Java消息服务)
2011-03-28 19:28 898在不同系统之间交换信息的一大障碍是如何在精确交换和格式化数据方 ... -
消息中间件和JMS
2011-03-28 19:26 790当前,CORBA、DCOM、RMI等R ...
相关推荐
在点对点消息传递域中,目的地被称为队列(queue),消息只能被一个消费者消费;而在发布/订阅消息传递域中,目的地被称为主题(topic),消息可被多个消费者消费。 消息生产者是会话创建的对象,用于将消息发送到...
根据 JMS 1.0.2 规范,有两种消息传递模型:点对点 (Point-to-Point, PTP) 和发布/订阅 (Publish/Subscribe, PUB/SUB)。 - **点对点** 模型的特点包括: - 每个消息只能有一个消费者。 - 消费者和生产者之间没有...
5. **消息类型和模式**:ActiveMQ支持点对点(Queue)和发布/订阅(Topic)两种消息模式。点对点模式下,消息仅被一个消费者接收;发布/订阅模式下,消息可以被多个订阅者接收。 6. **高级特性**:ActiveMQ还提供了...
在 JMS 中,主要有两个消息模型:点对点(Queue)和发布/订阅(Topic)。点对点模型中,消息由一个生产者发送到队列,一个消费者接收并处理该消息,一旦被消费,消息就会从队列中移除。而发布/订阅模型中,消息发布...
在本篇《ActiveMQ实战——实现一个简易版的聊天室》中,我们将深入探讨如何利用Apache ActiveMQ构建一个简单的在线聊天应用。ActiveMQ是Apache软件基金会的一个开源项目,它是一款功能强大的消息中间件,用于在...
- **定义**:ActiveMQ 是一个开源的消息中间件,它支持多种消息传递模式,如点对点 (PTP) 和发布/订阅 (Pub/Sub)。 - **特点**: - 支持多种协议,如 AMQP、STOMP、MQTT 等。 - 提供持久化存储选项,包括 KahaDB ...
综上所述,《ActiveMQDemo实战.pdf》涉及的知识点涵盖了消息队列的基本概念、ActiveMQ的基本使用、JMS API的编程模式、消息的生产与消费流程、以及消息服务的配置和安全性考虑。对于IT行业的专业人员来说,这些知识...
- **消息模型**:ActiveMQ支持多种消息模型,如点对点(Queue)和发布/订阅(Topic),分别适用于一对一和一对多的通信场景。 - **协议支持**:ActiveMQ支持多种消息协议,如开放消息传递接口(Openwire)、简单...
本文介绍了消息队列的基本概念和作用,重点讲解了ActiveMQ5.x的主要特性和SpringBoot2.x中如何整合及实现点对点消息的实战案例。通过对这些知识点的理解和实践,开发者能够更好地理解和应用消息队列技术,提升系统...
1. **JMS 概念**:JMS 提供了两种消息模型——点对点(Queue)和发布/订阅(Topic)。点对点模式下,每个消息仅被一个消费者接收;发布/订阅模式下,消息可被多个订阅者接收。 2. **创建连接**:使用 JMS API 创建与...
ActiveMQ对JMS进行了实现,支持多种消息模型,如点对点(Queue)和发布/订阅(Topic)。 3. **ActiveMQ特性**: - **持久化**:ActiveMQ提供持久化的消息存储,即使在服务器故障后也能保证消息不丢失。 - **网络...
这个"activeMQ.zip"压缩包包含了一个ActiveMQ的实战示例,涵盖了点对点(Peer-to-Peer, P2P)通信模式和发布/订阅(Publish/Subscribe, Pub/Sub)模型,这两种是消息队列中最常见的通信模式。 点对点模式是基于JMS的...
ActiveMQ支持发布/订阅、点对点等多种消息模式,以及事务处理、消息持久化等功能,确保了消息的可靠传输。 **二、SpringBoot整合ActiveMQ** 1. **依赖引入** 在SpringBoot项目中,我们需要添加ActiveMQ的依赖。在...
4. **定义Destination**:定义消息的目的地,可以是Queue(点对点)或Topic(发布/订阅模型)。 5. **配置MessageListenerContainer**:创建`DefaultMessageListenerContainer`,用于监听消息。可以设置并发消费者...
- **队列(Queue)**:点对点模式,每条消息仅由一个消费者接收。 3. **Quartz介绍**:Quartz是一个开源的作业调度框架,可以精确控制任务的执行时间,例如定期执行数据备份、清理日志等任务。 4. **Quartz的主要...
在点对点模型中,如果消费者在接收到消息后没有确认,那么消息将保留在队列中,直到确认或超时。在发布/订阅模型中,消息一旦发布就不可撤销,但可以通过设置消息的持久性来确保即使代理服务器重启也能恢复未消费的...
ActiveMQ是一款功能强大的开源消息代理,支持多种协议,如OpenWire、STOMP、AMQP、MQTT等,适用于多种应用场景,包括点对点和发布/订阅模式的消息传递。其特性包括:高可用性、持久化、事务处理、安全控制以及丰富的...
- Destination:消息的目的地,可以是Queue(点对点通信)或Topic(发布/订阅模式)。 4. **ActiveMQ的使用场景** - 异步处理:将耗时操作从主业务流程中分离,提高系统响应速度。 - 负载均衡:通过多个Consumer...
在Java面试中,对ActiveMQ的理解和应用能力往往是衡量开发者技能的重要标准。下面将详细讨论ActiveMQ的核心概念、功能、应用场景以及面试中可能涉及的问题。 1. **核心概念** - **消息队列**:ActiveMQ中的消息...