- 浏览: 84255 次
文章分类
- 全部博客 (32)
- java (32)
- java.lang.IncompatibleClassChangeError (1)
- mysql concat函数 字符串连接 (1)
- Java网络编程 (1)
- ActiveMQ中消息游标 (1)
- applicationContext-hibernate-transaction.xml (1)
- Google Chrome浏览器必备插件(附:Firefox火狐浏览器必备插件) (1)
- Oracle数据库文档构造器--Oraschemadoc (1)
- solaris essential (1)
- 使用Spring的test (1)
- org.springframework.dao.InvalidDataAccessApiUsageException: Write operations are (1)
- 《代码之道》 (1)
- 三亚之行 (1)
- StatCVS 对使用CVS的项目进行深入统计的开源工具 (1)
- 读写PDF TIFF JPEG文件的JAVA类库 (1)
- 应用MapXtreme2004开发GIS代码(C#) 搜索TAB表中的元素 (1)
- 购物车的实现及结算处理[转] (1)
- 微软发布搜索引擎 兼谈几个搜索引擎的比较 (1)
- 对于嵌入式系统的学习 应该可以告一段落了 (1)
- 移动审批工作流设计与实现 (1)
- SIFT算法概述 (1)
- 腾讯微博java(android) sdk 话题相关api详细介绍 (1)
- No configuration found. Configuring ehcache from ehcache-failsafe.xml (1)
- memcached client -- spymemcached使用 (1)
- Simple XML (1)
- 空指针错误 java.lang.NullPointerException (1)
- 服务器重起 (1)
- Spring中Quartz的Cron表达式详解 (1)
- swt 开发 (1)
- res.sendRedirect()和req.getRequestDispatcher().forward(req (1)
- res)的区别 (1)
- JAVA类设计技巧 (1)
- java之socket编程之谈 (1)
- 总结一下iteye上的足迹 (1)
最新评论
???????? 在 ActiveMQ 5.0的之前版本中,broker 会把正在传输的消息保存在内存中。使用这种内存模型,当一个消费者消费消息的速度跟不上生产者生产消息的速度的时候,会是 broker 内存中维护的正在传输的消息数量迅速增长,最终到达最大限额。当到达此最大限额后,broker 就不能接受来自客户端的消息,这样生产者就会被阻塞直到 broker 的内存中有保存消息的空间为止。
?????? 从 5.0 版本开始,ActiveMQ 实现了一种新的内存模型以防止慢速的消费者阻塞运行速度更快的生产者。这种内存模型使用了消息游标,详情请查看 http://activemq.apache.org/message-cursors.html 。 <br>??????? 当消息消费者在激活并且快速消息消息的情况下,紧跟消息的生产者。消息被消息存储并且被传递到消息者关联的broker对应的分发调度队列。
?<img src="http://dl.iteye.com/upload/picture/pic/93490/44ccef05-d76a-3530-a80a-f62c77770a27.png" alt="" width="479" height="360">
?
?
如果消息消费者处于激活状态,处于存储状态的消息处于等待状态或者消费者消费比生产者慢的时候,消息将通过等待指针把消息从消息存储中将消息放入分发队列中。
?
?<img src="http://dl.iteye.com/upload/picture/pic/93488/e47d858c-5326-3bce-9b18-1872ca08bf0a.png" alt="" width="484" height="366">
?
游标类型:
??? 在ActiveMQ5.0中默认消息指针类型是以存储为为基础。有两种类型的游标:vm Cursor和File Based Cursor。
?
Vm Cursor
????? 这种指针是从ActiveMQ4.x开始使用,当在需要的时候,消息将被存储到内存中同时把消息传递到分发队列中。这种基于内存指针速度很快,但是当消息者长时间处于非运行状态或者消息者消息很慢的时候,性能可能急速下降,内存占用比较高。
<img src="http://dl.iteye.com/upload/picture/pic/93494/108ba4ee-2a8f-38bc-88fd-e5dde8d5eb14.png" alt="" width="535" height="356">
?
File Based Cursor
? 这种指针在当Broker中内存达到最大的时候,指针将消息置入到磁盘上的临时文件中。这种消息的指针使用在消息者消费比较高。但是消息存储比较慢的情况。
发表评论
-
总结一下iteye上的足迹
2012-02-08 14:57 815<span style="bac ... -
java之socket编程之谈
2012-02-08 13:43 957<span style="col ... -
JAVA类设计技巧
2012-02-04 15:24 9131.一定要将数据设计为private 2.一定要 ... -
res.sendRedirect()和req.getRequestDispatcher().forward(req,res)的区别
2012-02-04 11:34 3274res.sendRedirect()=重定向 ... -
swt 开发
2012-02-03 17:14 9581. 下载 eclipse 3.7 2. 安装 goo ... -
Spring中Quartz的Cron表达式详解
2012-02-03 15:39 932<table style="& ... -
服务器重起
2012-02-03 14:54 659内报:141 外报:143,133 ? 外服:128 ... -
空指针错误 java.lang.NullPointerException
2012-02-02 14:44 955使用 ... -
Simple XML
2012-02-01 10:04 964<p style=""> ... -
memcached client -- spymemcached使用
2012-02-01 09:49 1355<a href="http://blo ... -
No configuration found. Configuring ehcache from ehcache-failsafe.xml
2011-12-28 13:23 1130<span style="font-f ... -
腾讯微博java(android) sdk 话题相关api详细介绍
2011-12-28 11:39 791<span style="font-f ... -
SIFT算法概述
2011-12-21 09:44 1014<span></span> & ... -
移动审批工作流设计与实现
2011-12-20 10:59 1202<p style="text-ind ... -
对于嵌入式系统的学习 应该可以告一段落了
2011-12-19 10:19 765最近看了些关于嵌入式系统的资料,脑袋里对嵌入式开发的概 ... -
微软发布搜索引擎 兼谈几个搜索引擎的比较
2011-12-17 10:44 857微软于昨天(11月11日)正式发布其搜索引擎。这个是网 ... -
购物车的实现及结算处理[转]
2011-12-16 17:07 2722注:此文章来自CSDN。觉得代码挺清晰的,而且可能很多 ... -
应用MapXtreme2004开发GIS代码(C#) 搜索TAB表中的元素
2011-12-15 12:09 966</span></span>& ... -
读写PDF TIFF JPEG文件的JAVA类库
2011-12-14 09:49 3073这几种常见文件格式的读写类库,有人收集好了,详见下面网 ... -
StatCVS 对使用CVS的项目进行深入统计的开源工具
2011-12-14 09:19 768这个工具很好,主要是分析cvs的log得出统计结果,以 ...
相关推荐
在 ActiveMQ 中,可以通过设置时间戳插件来实现消息过期时间设置。该插件可以根据消息的过期时间来删除消息。配置示例如下: ... <!-- 86,400,000ms = 1 day --> ... 其中,ttlCeiling 表示过期时间...
在ActiveMQ中,有多种策略可供选择,以决定如何处理这些死信消息。 ##### 直接抛弃死信队列 如果开发者不需要关心DeadLetter消息,可以使用`DiscardingDLQBrokerPlugin`插件来直接丢弃这些消息。 ```xml <!--...
本教程将详细介绍如何在Spring Boot项目中集成ActiveMQ,实现消息接收的Demo。 首先,我们需要在Spring Boot项目中引入ActiveMQ的相关依赖。在`pom.xml`文件中添加以下Maven依赖: ```xml <groupId>org.spring...
在ActiveMQ中,发送和接收消息是一个核心功能,它允许应用程序之间进行异步通信,提高系统的可扩展性和解耦性。 在ActiveMQ中发送消息,通常涉及以下步骤: 1. **创建ConnectionFactory**:ConnectionFactory是...
一个jms activemq Topic 消息实例 关于jms JMS 是接口,相当于jdbc ,要真正使用它需要某些厂商进行实现 ,即jms provider 常见的jms provider 有 ActiveMQ JBoss 社区所研发的 HornetQ (在jboss6 中默认即可以...
在ActiveMQ中,我们可以自定义消息序列化和反序列化的方式,以处理不同类型的数据。这通常涉及到创建一个实现`MessageConverter`接口的类,并在Spring配置中声明使用。 **四、高级特性** 除了基本的发送和接收消息...
使用`conn.Subscribe()`方法订阅ActiveMQ中的主题或队列。订阅后,使用`conn.Recv()`接收消息: ```go frame, err := conn.Subscribe("/queue/test", stomp.AckAuto) if err != nil { panic(err) } defer ...
首先,我们要理解ActiveMQ中的队列(Queue)概念。队列是一种先进先出(FIFO)的数据结构,每个消息只会被一个消费者接收和处理,确保消息的有序性和可靠性。在Java环境中,我们可以使用JMS API来与ActiveMQ进行交互...
在ActiveMQ中,它用于在KahaDB中实现消息的持久化。你需要`openjpa-all.jar` 来支持这一功能。 6. **其他依赖**:此外,还有一些其他的库,如`geronimo-jms_2.0_spec.jar`(提供JMS 2.0规范),`commons-logging....
至于压缩包文件"activemq_ws_接收消息",其中可能包含示例代码、配置文件或者文档,帮助用户更好地理解如何在ActiveMQ中配置WebSocket接收消息。解压并研究这些文件将有助于实际操作中的实施。 总之,使用WebSocket...
在本场景中,我们关注的是如何使用C#编程语言结合ActiveMQ来实现发布/订阅模式的消息传送。ActiveMQ是Apache软件基金会开发的一个开源消息传递平台,支持多种协议,包括NMS(.NET Messaging Service),它是专门为...
8. **事务处理**:学习如何在ActiveMQ中使用JMS事务确保消息的一致性和可靠性。 9. **性能监控**:ActiveMQ提供了一套强大的监控工具,包括Web控制台,可以用来查看消息的发送、接收和堆积情况,帮助优化系统性能。...
在面试中,面试官可能会问到关于ActiveMQ的一些基础和深入的问题,比如ActiveMQ的特性、消息传递机制、故障处理、消息持久化、性能调优以及消息消费等方面的知识。 1. ActiveMQ的核心概念和功能 ActiveMQ提供了多种...
5. **队列和主题的区别**:在ActiveMQ中,消息可以发送到队列(Queue)或主题(Topic)。队列遵循一对一模型,每个消息仅被一个消费者接收;主题遵循一对多模型,一个消息可以被多个订阅者接收。在上述示例中,我们...
ActiveMQ是Apache软件基金会开发的一款开源消息中间件,它遵循开放消息传递协议(Open Message Broker Protocol,即AMQP)和Java消息服务(Java Message Service,JMS)规范,用于在分布式系统中高效地处理和传输...
在本项目中,"SpringBoot整合ActiveMQ(消息中间件)实现邮件发送功能"是一个典型的企业级应用示例,它展示了如何将SpringBoot框架与Apache ActiveMQ集成,以实现基于消息队列的邮件发送服务。下面我们将详细探讨这个...
3. **创建队列**:在ActiveMQ中,可以通过管理控制台或编程方式创建队列。例如,通过JMS API,可以创建一个`Queue`对象来表示队列,并向其发送和接收消息。 4. **生产者(Publisher)**:生产者是发送消息的实体。...
在本文中,我们将深入探讨如何使用SpringBoot、ActiveMQ和MQTT来实现消息的发送与接收。这是一个典型的分布式系统中的消息通信场景,其中SpringBoot作为应用程序框架,ActiveMQ作为消息中间件,而MQTT(Message ...
4. **消息模型**:理解发布/订阅和点对点两种消息模型,以及在ActiveMQ中如何选择和配置。 5. **浏览器兼容性**:探讨如何确保代码在不同浏览器(IE、Edge、Chrome、Firefox)上的兼容性,可能涉及到polyfill或特定...
在本教程中,我们将探讨如何整合Spring框架与ActiveMQ消息队列,实现前后台的消息传递。这有助于提升系统的可扩展性和响应速度,降低不同组件之间的耦合度。 首先,Spring框架是Java企业级应用开发的事实标准,它...