ActiveMQ深入浅出系列 (一)

简介

Apache ActiveMQ是一个比较广泛使用的开源消息中间件。他的性能较快,并且支持许多语言的客户端及多种协议。它在企业集成模式中非常易于使用,并且完全支持JMS 1.1 和J2EE 1.4的很多高级特性。Apache ActiveMQ在Apache 2.0 Liense下开源。

主要特性

  • 支持Java, C, C++, C#, Ruby, Perl, Python, PHP等客户端

    • OpenWire模式下的Java, C, C++, C#客户端的性能非常高。
    • Stomp支持是为了C, Ruby, Perl, Python, PHP, ActionScript/Flash,Smalltalk 语言能够方便的和ActiveMQ Broker 通信,就像其他消息Broker一样。
    • 支持AMQP v1.0 。
    • AMQP v1.0 支持允许在IOT环境中的设备的链接
  • JMS客户端和消息Broker完全支持企业集成模式
  • 支持诸如 Message Groups, Virtual Destinations, Wildcards and Composite Destinations
    • Message Group是针对queue。如果在queue模式下,一个生产者对应多个消费者,每生产一条消息,会被消费随即抢到,如果我们不希望这样,只希望固定的消息被固定的消费者消费,那么就采用group对消息进行一个类似标记的作用。另外一方面,Message Groups特性也是一种负载均衡的机制。在一个消息被分发到consumer之前,broker首先检查消息JMSXGroupID属性。如果存在,那么broker会检查是否有某个consumer拥有这个message group。如果没有,那么broker会选择一个consumer,并将它关联到这个message group。此后,这个consumer会接收这个message group的所有消息,直到: 1:Consumer被关闭 2:Message group被关闭,通过发送一个消息,并设置这个消息的JMSXGroupSeq为-1
    • Virtual Destinations 集群应用想要消费同一个队列时可以使用该模式。使用起来非常简单,对于消息发布者来说,就是一个正常的Topic,名称以VirtualTopic.开头。例如VirtualTopic.TEST。对于消息接收端来说,是个队列,不同应用(或者说不同集群 不同组)里使用不同的前缀作为队列的名称,即可表明自己的身份也可实现消费端应用分组。例如Consumer.A.VirtualTopic.TEST来说明他是A组的消费者。可以在同一个组内使用多个consumer来消费此组消息。每组相当于一个持久化订阅者,组内可以有多个消费者共同消费消息。
    • Wildcards and Composite Destination,通过通配符监听一批消息队列及同时发送多个通知。
  • 完全支持JMS 1.1和J2EE 1.4,支持transient, persistent, transactional and XA messaging
  • Spring支持,使ActiveMQ可以轻松地嵌入到Spring应用程序中,并使用Spring的XML配置机制进行配置
  • 在流行的J2EE服务器(如TomEE、Geronimo、JBoss、GlassFish和WebLogic)中进行了测试
    • 包含用于入站和出站消息传递的JCA 1.5资源适配器,以便ActiveMQ能够在任何符合J2EE 1.4的服务器中自动部署
  • 支持可插入传输协议,如in-VM、TCP、SSL、NIO、UDP、多播、JGroups和JXTA传输
  • 支持使用JDBC和高性能日志进行非常快速的持久性
  • 适用于高性能集群、客户端-服务器、对等通信
  • REST API为消息传递提供与技术无关和语言无关的基于web的API
  • Ajax支持使用纯DHTML向web浏览器提供web流支持,允许web浏览器成为消息传递结构的一部分
  • CXF和Axis支持,以便ActiveMQ可以轻松地放到这两个web服务栈中,以提供可靠的消息传递
  • 可以作为内存中的JMS提供程序使用,非常适合对JMS进行单元测试

<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">

原文地址:https://www.cnblogs.com/alcc/p/10023406.html

时间: 2024-11-14 12:41:27

ActiveMQ深入浅出系列 (一)的相关文章

Azure Stack技术深入浅出系列1:Azure Stack与Azure的有QoS保证的网络联通实现方法和对比测试

源自Azure的Azure stack作为一款业界唯一的和领先的公有云平台一致的混合云平台,能够帮助企业客户从自有数据中心交付Azure云服务.它作为微软混合云战略中的重头戏,官方宣称其将在今年年中GA了.上海仪电集团高度重视这一产品,同时成立了一个专门的团队来跟踪最新的Azure Stack技术动态并积极推动Azure Stack在中国落地.在今后一段时间内容,我们将在过去一年间追踪Azure Stack的技术内容汇总为Azure Stack技术深入浅出系列文章分享给对微软混合云产品感兴趣的相

Azure Stack技术深入浅出系列3: Azure Stack运维工具Azure Stack Tools的使用及实战

源自 Azure 的 Azure stack 作为一款业界唯一的和领先的公有云平台一致的混合云平台,能够帮助企业客户从自有数据中心交付 Azure 云服务.作为<Azure Stack 技术深入浅出系列>的第三篇文章,本文将介绍 Azure Stack 部署完成以后,如何快速的管理和维护这套系统环境,包括虚拟机的管理.远程 VPN 连接.传输部署镜像.远程监控等.本文将通过一套 Azure Stack 运维工具集--Azure Stack Tools 来尝试使用和管理 Azure Stack

Azure Stack技术深入浅出系列4: Azure Stack自定义虚拟机镜像和Gallery Item

Azure Stack环境中服务的提供者或运营者从微软变成了Azure Stack集成环境的运营者,通过Azure Stack的MarketPlace,我们可以根据用户的特定需求,提供一些定制化的应用,获得与公有云不一样的用户体验.本文将主要介绍如何在Azure Stack的MarketPlace中如何添加一个自定义的虚拟机进行并定制满足需求的Gallery Item,同时通过自服务的模式提供给业务的消费者. 这一篇,我们将探讨以下几个问题: 如何制作自定义镜像 从自定义镜像创建虚拟机的几种方式

ActiveMQ入门系列二:入门代码实例(点对点模式)

在上一篇<ActiveMQ入门系列一:认识并安装ActiveMQ(Windows下)>中,大致介绍了ActiveMQ和一些概念,并下载.安装.启动他,还访问了他的控制台页面. 这篇,就用代码实例说下如何实现消息的生产和消费. 一.理论基础 同RabbitMQ一样,ActiveMQ中也是有两种模式: 点对点模式(Point to Point,简写为PTP) 发布/订阅模式(Publish & Subscribe,简写为Pub & Sub) 通过上一篇我们知道了制造消息的应用叫生产

ActiveMQ入门系列三:发布/订阅模式

在上一篇<ActiveMQ入门系列二:入门代码实例(点对点模式)>中提到了ActiveMQ中的两种模式:点对点模式(PTP)和发布/订阅模式(Pub & Sub),详细介绍了点对点模式并用代码实例进行说明,今天就介绍下发布/订阅模式. 一.理论基础 发布/订阅模式的工作示意图: 消息生产者将消息(发布)到topic中,可以同时有多个消息消费者(订阅)消费该消息. 和点对点方式不同,发布到topic的消息会被所有订阅者消费. 当生产者发布消息,不管是否有消费者,都不会保存消息. 一定要先

Docker深入浅出系列 | 容器初体验

Docker深入浅出系列 | 容器初体验 教程目标 Docker已经上市很多年,不是什么新鲜事物了,很多企业或者开发同学以前也不多不少有所接触,但是有实操经验的人不多,本系列教程主要偏重实战,尽量讲干货,会根据本人理解去做阐述,具体官方概念可以查阅官方文档,本章目标如下: 了解什么是Docker 了解Docker解决了什么 了解什么是镜像和容器 了解容器与虚拟机的区别 了解Vagrant与Docker的区别 了解Docker引擎和架构 了解Docker的镜像分层 了解VirturalBox和Do

Docker深入浅出系列 | 单节点多容器网络通信

目录 教程目标 准备工作 带着问题开车 同一主机两个容器如何相互通信? 怎么从服务器外访问容器 Docker的三种网络模式是什么 Docker网络通信原理 计算机网络模型回顾 Linux中的网卡 查看网卡接口信息 网卡的操作 ip a核心信息详解 网卡的配置文件 修改网卡配置,绑定一个新ip地址 网卡的重启与启动 Linux网络虚拟化技术 创建虚拟网络环境 连通两个Network Namespace 通过Bridege建立多个namesapce通信 Docker容器的网络 bridge网络模式实

Docker深入浅出系列 | Image实战演练

原文:Docker深入浅出系列 | Image实战演练 目录 课程目标 Container与Image核心知识回顾 制作Docker Image的两种方式 Dockerfile常用指令 Image实战篇 通过Dockerfile制作Image 通过Docker Commit创建Image 附录 Image常用操作 Container常用操作 项目Demo Github Docker已经上市很多年,不是什么新鲜事物了,很多企业或者开发同学以前也不多不少有所接触,但是有实操经验的人不多,本系列教程主

Azure Stack技术深入浅出系列2:谈Azure Stack在私有云/混合云生态中的定位

一. 国内私有云业务前景 就在今年4月,工信部发布<云计算发展三年行动计划(2017-2019)>,提出2019年云计算产业规模将达到4300亿.云计算已成为国家新一代信息产业发展的重要战略.从中国整个IT投入来看,政府.央企.国企以及大型民企占据主要份额,这些企业都意图拥抱云计算以提升生产力,但出于安全的考虑,又暂时对公有云有所顾忌.因此未来几年,私有云业务仍然会占据中国大部分市场份额. 根据Right Scale发布的<2017 State of the CloudSurvey>