ActiveMQ消息队列介绍
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消息队列介绍相关推荐
- ActiveMQ消息队列介绍(转)
ActiveMQ是一个开源兼容Java Message Service (JMS) 1.1面向消息的中件间. 来自Apache Software Foundation. ActiveMQ提供松耦合的应 ...
- 消息队列及常见消息队列介绍
转载 消息队列及常见消息队列介绍 一.消息队列(MQ)概述 消息队列(Message Queue),是分布式系统中重要的组件,其通用的使用场景可以简单地描述为: 当不需要立即获得结果,但是并发量又需要 ...
- 消息队列属性及常见消息队列介绍
什么是消息队列? 消息队列是在消息的传输过程中保存消息的容器,用于接收消息并以文件的方式存储,一个队列的消息可以同时被多个消息消费者消费.分布式消息服务DMS则是分布式的队列系统,消息队列中的消息分布 ...
- SpringBoot集成ActiveMq消息队列实现即时和延迟处理
原文链接:https://blog.csdn.net/My_harbor/article/details/81328727 一.安装ActiveMq 具体安装步骤:自己谷歌去 二.新建springbo ...
- 从mq服务器中获取消息命令,MQ服务消息队列介绍
MQ服务消息队列介绍 资源简介MQ服务器端和客户端通信浅谈 1. WebSphere MQ的服务端的安装和配置 (1)创建名为venus.queue.manager的默认队列管理器. 在DOS窗口命令 ...
- 各个MQ消息队列介绍以及区别比较(RabbitMq ActiveMQ、ZeroMQ、Kafka)
首先,MQ其实就是消息队列,队列我们可以理解为管道,以管道的方式做消息传递. 在本篇博客中,我们先来简单学习一下几种MQ,之后对他们进行对比. ActiveMQ.RabbitMQ.kafka.Rock ...
- ActiveMQ消息队列安装和使用
ActiveMQ ActiveMQ介绍 什么是ActiveMQ ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线.ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规 ...
- SpringBoot整合activeMQ消息队列手动签收(Session.CLIENT_ACKNOWLEDGE)为什么失效啊?
今天在家隔离办公,不太忙,然后就琢磨起来消息队列activeMQ的消息事务来解决分布式事务,但是奈何在SpringBoot整合activeMQ时,其消费者手动签收消息时出现了问题-->当acti ...
- ActiveMQ消息队列的使用及应用
目录: 一:JMQ的两种消息模式1.1:点对点的消息模式1.2:订阅模式 二:点对点的实现代码2.1:点对点的发送端2.2:点对点的接收端 三:订阅/发布模式的实现代码3.1:订阅模式的发送端3.2 ...
- activeMQ消息队列(xml方式)
一.项目搭建(spring+activeMQ环境) 导包: <!-- 消息队列 MQ --><dependency><groupId>org.apache.acti ...
最新文章
- python实现yolo目标检测_从零开始PyTorch项目:YOLO v3目标检测实现
- 【struts2】action中使用通配符
- 详解:数据库名、实例名、ORACLE_SID、数据库域名、全局数据库名、服务名及手工脚本创建oracle数据库...
- python两个列表合并 从小到大排列_Python对两个有序列表进行合并和排序的例子...
- rxjs里b = a.pipe(map(mapFn))的执行示意图
- 【设计思想解读开源框架】mysql官方文档中文版下载免费
- iOS 开发屏幕适配尺寸
- LTE网络测试仪器和监控系统
- Python 数据结构与算法——递归
- Abaqus运行fortan报错:“Error in job Job-1: Problem during compilation - D:\test.for”
- 【Python实践】Python部分实际案例解答1
- mtk camera faq
- html仿excel冻结 css,css实例:实现gridview仿excel冻结列
- Python文件读写模式与光标的移动
- PHP在线客服系统IM即时通讯聊天源码
- 在线的h5编辑器汇总和分析
- 计算机组装方案i5,3000元预算方案i5 8400/GTX1050Ti装配配置清单推荐
- 为Greenplum 增加mirror节点
- SpringBoot-21-统一日志框架
- 阿里云服务器不能发邮件的解决方法
热门文章
- mfc使用matlab绘图,mfc调用matlab绘图
- 计算机cad标题栏快捷键,AutoCAD快捷键和工具栏及菜单栏大集合
- 51单片机定时器实现PWM波
- 小米开源便签Notes-源码研究(0)-整体功能介绍(图文并茂)
- jxls模板hashmap_使用Java + jxls基于模板导出excel
- 时间窗口(Time Windows)
- VGA常用分辨率及计算方法
- 布客·ApacheCN 编程/大数据/数据科学/人工智能学习资源 2020.4
- 什么软件硬盘测试修复最好,什么软件检测、修复硬盘坏道最好?
- C语言开发环境搭建及调试