- 浏览: 1011176 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (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的个人使用心得【转】
.NET下发送和接收ActiveMQ
A:下载ActiveMQ,地址http://activemq.apache.org/download.html
B:执行/bin/win32/InstallService.bat.在Windows服务中可以看到名称为ActiveMQ的服务被建立。它提供了管理工具http://localhost:8161
A:下载.netAPI。http://activemq.apache.org/nms/ 。主要涉及两个DLL,Apache.NMS.ActiveMQ.dll和Apache.NMS.dll。需要自己从下载的文件中提取文件另建工程编译出这两个类库。同时下载的文件主要有两部分源代码和测试代码
B:引入DLL建立测试工程。一下列出发送和收取的代码
ActiveMQ和MSMQ的异同
1 :发送的内容
ActiveMQ 可以发送值类型也可以发送引用类型,而MSMQ只能发送值类型。
2 :消息的格式
ActiveMQ 支持的消息格式有
ITextMessage
IMapMessage Key-Value 消息
IBytesMessage
IObjectMessage
IStreamMessage
MSMQ 支持的消息格式有
XmlMessageFormatter
BinaryMessageFormatter
ActiveXMessageFormatter
2 :消息的划分
MSMQ 将消息划分为
用户队列(1公共队列:在整个“消息队列”网络 中复制,并且有可能由网络连接的所有站点访问。2专用队列”不在整个网络中发布。相反,它们仅在所驻留的本地计算机上可用。专用队列只能由知道队列的完整 路径名或标签的应用程序访问。3“管理队列”包含确认在给定“消息队列”网络中发送的消息回执的消息。4“响应队列”包含目标应用程序接收到消息时返回给 发送应用程序响应消息。)
系统队列(1“日记队列”可选地存储发送消息的 副本和从队列中移除的消息副。2“死信队列”存储无法传递或已过期的消息的副本。3“报告队列”包含指示消息到达目标所经过的路由的消息,还可以含测试消 息。每台计算机上只能有一个报告队列。4“专用系统队列”是一系列存储系统执行消息处理操作所需的管理和通知消息的专用队列。
ActiveMQ 没有类似的划分
3 :消息的等级
MSMQ 将消息等级进行如下划分
Lowest = 0,
VeryLow = 1,
Low = 2,
Normal = 3,
AboveNormal = 4,
High = 5,
VeryHigh = 6,
Highest = 7,
而ActiveMQ的划分为
Lowest = 0,
VeryLow = 1,
Low = 2,
AboveLow = 3,
BelowNormal = 4,
Normal = 5,
AboveNormal = 6,
High = 7,
VeryHigh = 8,
Highest = 9,
4 :Active支持软件级别的负载均衡而MSMQ不支持。
A :都支持事务
B :都支持同步和异步两种接收方式
C :消息都具有快递方式和可恢复方式(永久存储)。对于快递方式稍有差异MSMQ的快递方式只有在删除,重启机器的时候消息才会销毁而ActiveMQ可以设置保存一定时间后销毁。
D :都支持点对点和发布订阅两种模式
ActiveMQ和msmq性能对比
机器配置:CPU 双核 2.83GHZ,内存 1.98GB OS windows2003 SP2
1 启动停机测试
ActiveMQ
重启
20W 数据需要1分钟,100W在3分钟,200W在10分钟左右。
这里需要说明的是,恢复时间主要消耗在kaha上,如果使用jdbc存储,所有恢复时间都在1分钟之内。
停机
amq 停机速度很快,基本没有出现过需要强制kill的情况
MSMQ
无论重启或是停机在20W,100W已及200W数据下都瞬间完成。但是清空百万级别的队列操作无法响应,必须KILL进程。(有时导致死机)
2 5 分钟内25个用户发送性能测试对比
队列为空的情况下
ActiveMQ 发送1k,10K,100K发送总量为5k,4.5k,4.2K平均每秒发送19,15,15
MSMQ 发送1k,10k,100k发送总量为42w,31w,8,6w平均每秒发送1.4K,1k,286
25 个线程1分钟Active发送1k,10K,100K发送总量为20w,12w,5K
队列为1W(时间为1分钟)
多线程ActiveMQ发送1k,10K,100K发送总量为17w,12w,1.6w
MSMQ 发送接收1k,10k,100k发送总量为5.8w,1.4w,1.3k平均每秒发送956,230,20
队列为10W(时间为1分钟)
多线程ActiveMQ发送1k,10K,100K发送总量为13w,7w,2.5w
MSMQ 发送1k,10k,100k发送总量为6.3w,1.4w,1.2k平均每秒发送1k,236,19
3 5 分钟内25个用户发送接收性能对比
队列为空的情况下
ActiveMQ 发送并接收1k,10k,100k总量为8W,4w,6K,平均每秒300,100,30条
Msmq 发送并接收1k,10k,100k总量为29w,7.9w,1.1w平均每秒900,250,40条
25 个线程1分钟Active发送接收1k,10K,100K发送总量为35w,12w,1.1w
队列为1W(时间为1分钟)
多线程ActiveMQ发送接收1k,10K,100K发送总量为32w,12w,2w
MSMQ 发送1k,10k,100k发送总量为5w,1.2w,1k平均每秒发送800,190,19
队列为10W(时间为1分钟)
多线程ActiveMQ发送接收1k,10K,100K发送总量为34w,13w,2.5w
MSMQ 发送接收1k,10k,100k发送总量为4.6w,1.2w,1k平均每秒发送743,205,18
4 发送容量
ActiveMQ 单条发送100*1024*1024字节数据出错,90*1024*1024正常
ActiveMQ 单条发送2*1024*1024字节数据出错,1*1024*1024正常
5 发送速率
队列为空
ActiveMQ 发送1K数据耗费260MS,10K278MS,100K300MS
MSMQ 发送1K数据耗费290MS,10K319MS,100K350MS
队列长1000
ActiveMQ 发送1K数据耗费312MS,10K356MS,100K266MS
MSMQ 发送1K数据耗费10MS,10K10MS,100K11MS
队列长1w
ActiveMQ 发送1K数据耗费313MS,10K272MS,100K351MS
MSMQ 发送1K数据耗费10MS,10K10MS,100K11MS
队列长10w
ActiveMQ 发送1K数据耗费350MS,10K340MS,100K322MS
MSMQ 发送1K数据耗费11MS,10K11MS,100K14MS
队列长100w
ActiveMQ 发送1K数据耗费339MS,10K340MS,100K346MS
MSMQ 发送1K数据耗费10MS,10K11MS,100K14MS
队列长1000w
ActiveMQ 发送1K数据耗费754MS,10K733MS,100K758MS
MSMQ 报错“资源不足“
队列长2100w
ActiveMQ 发送1K数据耗费782MS,10K792MS,100K782MS
一些结论
1 :ActiveMQ尽量少的建立连接,多次发送可以共用一个连接。如果每次都建立连接进行发送那么它和MSMQ没有可比性,即MSMQ性能远远高于ActiveMQ。但是如果减少连接申请那么它性能原高于MSMQ。
2 :ActiveMQ的消息容量远高于MSMQ
3 :ActiveMQ在发送和接收同步的时候效率最高
4 :ActiveMQ在大容量(百万级别)表现更高的性能
5 :ActiveMQ更灵活的操控和扩展
更加详尽的ActiveMQ性能测试/Files/tommyli/ActiveMQ测试报告.pdf
if ($ != jQuery) { $ = jQuery.noConflict(); }
发表评论
-
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 1200The Advanced Message Queuing ... -
Apache Qpid (1) -- build
2011-05-07 22:02 1938http://qpid.apache.org/index.h ... -
ActiveMQ技术预研报告【转】
2011-04-22 14:44 1907ActiveMQ技术预研报告 研究部朱懋柱 1.文 ... -
ActiveMQ在C#中的应用
2011-04-21 16:18 1195ActiveMQ 是个好东东,不必多说。ActiveM ... -
ActiveMQ实战之 Queue点对点消息【转】
2011-04-18 23:15 1205对于此类消息,其实就是指使用JMS中的发P2P(点对点)消息模 ... -
ActiveMQ实战之 Topic发布订阅消息【转】
2011-04-18 23:14 1187对于此类消息,其实就是指使用JMS中的发布订阅消息模型的消息, ... -
ActiveMQ实战(4):JMS的安全性【转】
2011-04-18 22:52 1226对于JMS服务的安全控制,ActiveMQ提供两种方式:简单授 ... -
ActiveMQ实战(3):Web控制台的安全性【转】
2011-04-18 22:52 1333安装好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 1163package 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 897在不同系统之间交换信息的一大障碍是如何在精确交换和格式化数据方 ... -
消息中间件和JMS
2011-03-28 19:26 790当前,CORBA、DCOM、RMI等R ...
相关推荐
可用于调试MSMQ、RabbitMQ、ActiveMQ三种消息队列 其中MSMQ支持Active、Binary、XML格式(要勾选事务) RabbitMQ支持逐条接发、批量接发、RPC回调模式、新建队列、建立持久化队列、连接测试等功能。
本篇将详细介绍如何将ActiveMQ与Tomcat进行整合,以便在Web应用程序中利用ActiveMQ的消息传递功能。 首先,我们需要了解ActiveMQ和Tomcat的基本概念。ActiveMQ是Apache软件基金会开发的一款开源JMS(Java Message ...
"ActiveMQ5.13 安装与配置" ActiveMQ 是 Apache 软件基金会提供的一个开源message broker,能够实现点对点(Point-to-Point)和发布/订阅(Publish/Subscribe)模式的消息传递。ActiveMQ 5.13 是 ActiveMQ 的一个...
"activeMQ 与 quartz 事例" 这个标题表明我们要探讨的是两个在Java开发中常用的开源工具——ActiveMQ和Quartz。ActiveMQ是Apache软件基金会的一个项目,它是一个开源的消息中间件,用于处理消息传递。而Quartz则是...
【ActiveMQ与Tomcat整合教程】是关于如何在Apache Tomcat服务器中集成开源消息中间件ActiveMQ的详细步骤。这个教程适用于Tomcat 6.0.14版本,但请注意不同版本可能存在配置上的差异。 首先,为了使Tomcat能够识别和...
要使用Java连接到MSMQ,你需要一个支持MSMQ的JMS提供者,例如Apache ActiveMQ或IBM WebSphere MQ。这些提供者通常会提供特定的适配器或者驱动程序来与MSMQ交互。 创建消息队列的步骤如下: 1. **安装MSMQ服务**:...
ActiveMQ与Spring线程池整合的一个实例。 lib库没有上传。 对于实例的讲解,在竹子的论坛有我对这个实例的帖子(http://www.java2000.net/viewthread.jsp?tid=1167) lib中包含: apache-activemq-4.1.1.jar ...
《ActiveMQ与Spring整合源代码解析》 ActiveMQ和Spring的整合是企业级应用中常见的一种技术组合,尤其在分布式系统和微服务架构中,消息队列(Message Broker)如ActiveMQ扮演着至关重要的角色。它能有效地实现系统...
接下来我们将详细阐述ActiveMQ的安装与使用过程,包括安装前提条件、安装步骤、配置和启动以及安全配置等知识点。 首先,安装ActiveMQ之前需要有一个Java运行环境。这是因为ActiveMQ是使用Java开发的。JDK(Java ...
**ActiveMQ与REST API实践** ActiveMQ是Apache软件基金会开发的一款开源消息中间件,它遵循开放消息中间件标准——Java Message Service(JMS)。ActiveMQ以其高性能、稳定性和丰富的特性在分布式系统中广泛使用,...
本篇将详细讲解如何将ActiveMQ与Spring进行整合封装,实现高效、便捷的消息服务。 首先,ActiveMQ与Spring的整合主要基于Spring的JMS(Java Message Service)支持。Spring通过`ConnectionFactory`和`Destination`...
将ActiveMQ与Spring进行整合,可以方便地在Spring应用中使用消息队列功能。 本案例主要展示了如何在Spring应用中集成ActiveMQ,实现消息的发送和接收。首先,我们需要在项目中引入ActiveMQ的相关依赖。在Maven工程...
**ActiveMQ与Spring整合详解** ActiveMQ是Apache组织开发的一款开源消息中间件,它遵循Java消息服务(JMS)规范,提供可靠的消息传递和高效的消息处理能力。在企业级应用中,ActiveMQ常用于实现应用之间的解耦,...
2. **JMS编程**:使用JMS API与ActiveMQ交互,创建ConnectionFactory,然后创建Connection,Session,Destination(Queue或Topic),最后创建MessageProducer和MessageConsumer。 3. **Web控制台**:ActiveMQ内置了...
标题中的“ActiveMQ与Zookeeper集群测试代码”指的是一个实验或示例项目,旨在演示如何结合这两个组件来构建高可用的消息传递环境。Zookeeper在这里的角色可能是用来管理ActiveMQ集群的状态,实现节点间的选举和故障...
ActiveMQ收发工具利用JMS接口与ActiveMQ服务器进行通信。 2. **消息模型**:掌握点对点(Queue)和发布/订阅(Topic)两种消息模型。点对点模型确保每个消息仅被一个消费者接收,而发布/订阅模型允许多个订阅者接收...
标题中的“ActiveMQ与Spring集成实例之使用Maven构建”是指在Java开发环境中,通过Maven构建工具将Apache ActiveMQ消息中间件与Spring框架整合在一起的实际操作案例。这个主题涵盖了几大关键知识点: 1. **Apache ...
本例子程序的主题是"activeMQ与spring整合开发",这意味着它将展示如何在Spring应用中集成ActiveMQ,以便利用消息队列进行异步通信和解耦组件。以下是一些关键知识点: 1. **Spring集成ActiveMQ的基本配置**:在...
将ActiveMQ与Spring整合,可以方便地在Spring应用中使用JMS,实现消息驱动的架构。 本文将深入探讨ActiveMQ与Spring整合的关键知识点: 1. **Spring对JMS的支持**: Spring提供了`org.springframework.jms`包,该...
**ActiveMQ与Tomcat整合详解** ActiveMQ是Apache软件基金会开发的一款开源消息中间件,它遵循JMS(Java Message Service)规范,用于处理应用程序之间的异步通信和消息传递。而Tomcat是一款流行的开源Web服务器和...