- 浏览: 983962 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (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 1124Sessions 建立在不同容器中的两个节点的链接必 ... -
Advanced Message Queuing Protocol ( 2 ) 逻辑模型
2011-05-07 22:04 939Nodes and Links 一个AMQP的网络包 ... -
Advanced Message Queuing Protocol ( 1 ) 概述
2011-05-07 22:03 1164The Advanced Message Queuing ... -
Apache Qpid (1) -- build
2011-05-07 22:02 1904http://qpid.apache.org/index.h ... -
ActiveMQ技术预研报告【转】
2011-04-22 14:44 1870ActiveMQ技术预研报告 研究部朱懋柱 1.文 ... -
ActiveMQ在C#中的应用
2011-04-21 16:18 1157ActiveMQ 是个好东东,不必多说。ActiveM ... -
ActiveMQ实战之 Queue点对点消息【转】
2011-04-18 23:15 1172对于此类消息,其实就是指使用JMS中的发P2P(点对点)消息模 ... -
ActiveMQ实战之 Topic发布订阅消息【转】
2011-04-18 23:14 1154对于此类消息,其实就是指使用JMS中的发布订阅消息模型的消息, ... -
ActiveMQ实战(4):JMS的安全性【转】
2011-04-18 22:52 1188对于JMS服务的安全控制,ActiveMQ提供两种方式:简单授 ... -
ActiveMQ实战(3):Web控制台的安全性【转】
2011-04-18 22:52 1303安装好ActiveMQ后,其默认没有任何安全控制,任何人都可以 ... -
ActiveMQ实战(2):测试其是否正常工作【转】
2011-04-18 22:51 1168既然ActiveMQ安装好了并启动成功,接下来我们就编写一个测 ... -
ActiveMQ实战(1):安装与运行【转】
2011-04-18 22:45 1748ActiveMQ的项目主页:http://activemq.a ... -
[转] JMS开源比较
2011-03-30 23:46 1143Java开源JMS消息中间件 ... -
activemq5.2发送和接收BlobMessage简单实例
2011-03-29 23:45 1105package com.work.activemq ... -
ActiveMQ学习笔记----ActiveMQ和JBossMQ性能对比测试代码
2011-03-29 23:44 1193本文描述了对ActiveMQ进行性能测试的代码。性能测试用 ... -
ActiveMQ 实例
2011-03-29 23:21 9962009-06-24 ProducerTool.java ... -
activemq持久化配置,设置为主从模式(带复制的主从模式,应用mysql数据库)
2011-03-29 09:12 1788activemq持久化配置,设置为主从模式(带复制的主从模 ... -
ActiveMQ持久化消息的三种方式
2011-03-29 09:11 13291:前言 这一段给公司开发消息总线有机会研究A ... -
什么是JMS(Java消息服务)
2011-03-28 19:28 867在不同系统之间交换信息的一大障碍是如何在精确交换和格式化数据方 ... -
消息中间件和JMS
2011-03-28 19:26 761当前,CORBA、DCOM、RMI等R ...
相关推荐
可用于调试MSMQ、RabbitMQ、ActiveMQ三种消息队列 其中MSMQ支持Active、Binary、XML格式(要勾选事务) RabbitMQ支持逐条接发、批量接发、RPC回调模式、新建队列、建立持久化队列、连接测试等功能。
ActiveMQ与Spring线程池整合的一个实例。 lib库没有上传。 对于实例的讲解,在竹子的论坛有我对这个实例的帖子(http://www.java2000.net/viewthread.jsp?tid=1167) lib中包含: apache-activemq-4.1.1.jar ...
ActiveMQ的安装与使用ActiveMQ的安装与使用ActiveMQ的安装与使用
ActiveMQ与Tomcat整合教程,好像是word2007的,嘿嘿
ActiveMQ5.13 安装与配置
ActiveMQ与Spring整合示例Demo,ActiveMQ安装在linux系统中
ActiveMQ与Tomcat整合教程.docx
activemq教程,activemq与tomcat整合
activemq 配置说明与activemq入门讲解
ActiveMQ与spring整合进行封装,实现全注解开发,并且支持topic与queue两种模式无缝切换,对外提供统一的接口调用,简化操作。对连接池进行优化,容器实例动态生成。
activemq与spring的整合的简单案例,整体说明见博文:http://blog.csdn.net/u012897777/article/details/78748221
ActiveMQ与Zookeeper集群测试代码,用于测试高可用效果 。。。。。。。。。。。。。。。
activeMQ与spring整合开发的例子程序,消息队列技术
activemq性能与高可用性测试,activemq性能与高可用性测试。
cJMS之ActiveMQ与Spring整合源码
activemq与spring整合发送jms消息入门实例 jar 包和实例代码都在压缩包里了
支持持久化的采用Spring整合activeMQ与quartz的JMS数据同步实例,包含依赖的jar包
activemq activeMq笔记.docx
该资源是spring与activemq的基础整合,适合消息中间件的初学者
apache-activemq Linux版本