ActiveMQ是一个开源兼容Java Message  Service  (JMS) 1.1面向消息的中件间. 来自Apache Software Foundation. ActiveMQ提供松耦合的应用程序架构.  先来看两个应用通过RPC通讯的紧耦合:

通过面向消息的中件间, 架构演变为:

我们看到应用程序1发送message到中件间, 应用程序2从中件间接收message.  ActiveMQ提供了灵活的应用程序架构.

ActiveMQ消息存储也是FIFO:

什么时候使用ActiveMQ:

1. 异构应用

ActiveMQ虽然为是JAVA平台的, 但它有很多客户端.C/C++,  .NET,  Perl,  PHP,  Python,  Ruby, 同时ActiveMQ也是跨平台的.

2.替代RPC的解决方案

应用程序广泛地使用RPC风格调用实现同步. 很多C/S应用程序使用RPC包括ATMs, 大多数的web应用程序,信息卡系统,POS机等. 如果同步出现down机情况, 用户体验相当不好. 使用异步消息, 更多的消息接收者能更容易增加消息, 支持并发并且处理得更快. 这时,应用程序已经被解耦.

3.使得应用之间松耦合.

前面已经提到了, 紧耦合有很多问题,特别是分布式情况下. 松耦合架构, 使得应用程序很灵活,, 也可以引导出event-driven architecture (EDA)

4.事件驱动构架的基石

解耦,异步风格的架构通过调优允许Broker伸缩来更进一步来处理相当多的客户端, 更多是内存分配,等等 (称为垂直可伸缩性), 而不是仅依靠增加Broker节点的数目去处理很多更多客户端(称为水平可伸缩性) 的能力。

5.提高应用伸缩性

许多应用程序利用事件驱动构架为了获取更多的伸缩性, 例如电子商务, 政府, 制造业, 在线游戏. 这也是SOA的基石.

安装

可以官方网站下载安装二进制包,   在windows上解包,可以到apache-activemq-5.10.0\bin\activemq.bat运行ActiveMQ程序, 而在Linux上的apache-activemq-5.10.0-bin.tar.gz
wget方式下载,  tar zxvf activemq-x.x.x.tar.gz解包到一个目录就可以使用了.

ActiveMQ可能需要以下端口1099(JMX),61616(默认的TransportConnector)

windows查看监听端口:

netstat -an|find "61616"

Linux系统:

netstat -an|grep 61616

运行后可以打开web控制台:

http://localhost:8161/admin

在这儿,我们介绍一下.net下客户端, 从NuGet安装,

Install-Package Apache.NMS.ActiveMQ

Apache.NMS.ActiveMQ客户端还有一些高级特性:

1. 消息组

2.ActiveMQ steams

3. Blog message

4.Failover

5.计划与延迟消息提交.

6 异步发送

由于篇幅有限,今天介绍到这儿, 希望对您软件开发有帮助. 您可能感兴趣的文章:

集中队列的模式

Database数据库切片模式

如有想了解更多软件开发资讯,请关注我的微信订阅号:

作者:Petter Liu
出处:http://www.cnblogs.com/wintersun/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
该文章也同时发布在我的独立博客中-Petter Liu Blog。

转载于:https://www.cnblogs.com/wintersun/p/3962302.html

ActiveMQ消息队列介绍相关推荐

  1. ActiveMQ消息队列介绍(转)

    ActiveMQ是一个开源兼容Java Message Service (JMS) 1.1面向消息的中件间. 来自Apache Software Foundation. ActiveMQ提供松耦合的应 ...

  2. 消息队列及常见消息队列介绍

    转载 消息队列及常见消息队列介绍 一.消息队列(MQ)概述 消息队列(Message Queue),是分布式系统中重要的组件,其通用的使用场景可以简单地描述为: 当不需要立即获得结果,但是并发量又需要 ...

  3. 消息队列属性及常见消息队列介绍

    什么是消息队列? 消息队列是在消息的传输过程中保存消息的容器,用于接收消息并以文件的方式存储,一个队列的消息可以同时被多个消息消费者消费.分布式消息服务DMS则是分布式的队列系统,消息队列中的消息分布 ...

  4. SpringBoot集成ActiveMq消息队列实现即时和延迟处理

    原文链接:https://blog.csdn.net/My_harbor/article/details/81328727 一.安装ActiveMq 具体安装步骤:自己谷歌去 二.新建springbo ...

  5. 从mq服务器中获取消息命令,MQ服务消息队列介绍

    MQ服务消息队列介绍 资源简介MQ服务器端和客户端通信浅谈 1. WebSphere MQ的服务端的安装和配置 (1)创建名为venus.queue.manager的默认队列管理器. 在DOS窗口命令 ...

  6. 各个MQ消息队列介绍以及区别比较(RabbitMq ActiveMQ、ZeroMQ、Kafka)

    首先,MQ其实就是消息队列,队列我们可以理解为管道,以管道的方式做消息传递. 在本篇博客中,我们先来简单学习一下几种MQ,之后对他们进行对比. ActiveMQ.RabbitMQ.kafka.Rock ...

  7. ActiveMQ消息队列安装和使用

    ActiveMQ ActiveMQ介绍 什么是ActiveMQ ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线.ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规 ...

  8. SpringBoot整合activeMQ消息队列手动签收(Session.CLIENT_ACKNOWLEDGE)为什么失效啊?

    今天在家隔离办公,不太忙,然后就琢磨起来消息队列activeMQ的消息事务来解决分布式事务,但是奈何在SpringBoot整合activeMQ时,其消费者手动签收消息时出现了问题-->当acti ...

  9. ActiveMQ消息队列的使用及应用

    目录:  一:JMQ的两种消息模式1.1:点对点的消息模式1.2:订阅模式 二:点对点的实现代码2.1:点对点的发送端2.2:点对点的接收端 三:订阅/发布模式的实现代码3.1:订阅模式的发送端3.2 ...

  10. activeMQ消息队列(xml方式)

    一.项目搭建(spring+activeMQ环境) 导包: <!-- 消息队列 MQ --><dependency><groupId>org.apache.acti ...

最新文章

  1. python实现yolo目标检测_从零开始PyTorch项目:YOLO v3目标检测实现
  2. 【struts2】action中使用通配符
  3. 详解:数据库名、实例名、ORACLE_SID、数据库域名、全局数据库名、服务名及手工脚本创建oracle数据库...
  4. python两个列表合并 从小到大排列_Python对两个有序列表进行合并和排序的例子...
  5. rxjs里b = a.pipe(map(mapFn))的执行示意图
  6. 【设计思想解读开源框架】mysql官方文档中文版下载免费
  7. iOS 开发屏幕适配尺寸
  8. LTE网络测试仪器和监控系统
  9. Python 数据结构与算法——递归
  10. Abaqus运行fortan报错:“Error in job Job-1: Problem during compilation - D:\test.for”
  11. 【Python实践】Python部分实际案例解答1
  12. mtk camera faq
  13. html仿excel冻结 css,css实例:实现gridview仿excel冻结列
  14. Python文件读写模式与光标的移动
  15. PHP在线客服系统IM即时通讯聊天源码
  16. 在线的h5编辑器汇总和分析
  17. 计算机组装方案i5,3000元预算方案i5 8400/GTX1050Ti装配配置清单推荐
  18. 为Greenplum 增加mirror节点
  19. SpringBoot-21-统一日志框架
  20. 阿里云服务器不能发邮件的解决方法

热门文章

  1. mfc使用matlab绘图,mfc调用matlab绘图
  2. 计算机cad标题栏快捷键,AutoCAD快捷键和工具栏及菜单栏大集合
  3. 51单片机定时器实现PWM波
  4. 小米开源便签Notes-源码研究(0)-整体功能介绍(图文并茂)
  5. jxls模板hashmap_使用Java + jxls基于模板导出excel
  6. 时间窗口(Time Windows)
  7. VGA常用分辨率及计算方法
  8. 布客·ApacheCN 编程/大数据/数据科学/人工智能学习资源 2020.4
  9. 什么软件硬盘测试修复最好,什么软件检测、修复硬盘坏道最好?
  10. C语言开发环境搭建及调试