`

JMS学习篇《一》ActiveMQ消息中间件的简单介绍与用法-概念篇

阅读更多

原创说明:本篇博文为本人原创作品【http://blog.csdn.net/liaohaojian/article/details/70231742】,转载请注明出处

1.何为消息中间件

消息中间件是一种在分布式应用中互相交换信息的一种技术,常见的成熟消息中间件有:RabbitMQ、SonicMQ,activeMQ。下面正式进行activeMQ探索之旅。

ActiveMQ:官方网站http://activemq.apache.org/ ,阅读官网是最好最详细的学习方式。
使用ActiveMQ主要有下面几大点特性:
  • ActiveMQ 实现了非常多的跨语言客户端(Cross Language Clients),支持Java,C,C ++,C#,Ruby,Perl,Python,PHP,支持多种应用协议: OpenWire,Stomp REST,XMPP,AMQP
  • ActiveMQ 有非常好的spring支持,使ActiveMQ可以轻松嵌入到Spring应用程序中,并使用Spring的XML配置机制进行配置
  • ActiveMQ 支持多种不同的传播协议(transport protocols),如VM,TCP,SSL,NIO,UDP多点传送,JGroups和JXTA传输
  • ActiveMQ 支持大量的特性,比如 Message Groups, Virtual Destinations, Wildcards and Composite Destinations
  • ActiveMQ 支持通过JDBC和journal提供高速的消息持久化
  • 支持Ajax
  • 支持与Axis的整合
  • 可以很容易得调用内嵌JMS provider,进行测试

2.适用场景

  1. 系统间解耦
  2. 在一些高并发场景下,使用MQ的异步特性
  3. 分布式系统中,消息传递

3.简单使用

1).下载地址:http://activemq.apache.org/download.html ,最新版本为5.14.5
2).下载解压后,有如下几大文件夹,见名知意,主要功能如下:
  • bin存放的是脚本文件
  • conf存放的是基本配置文件
  • data存放的是日志文件
  • docs存放的是说明文档
  • examples存放的是简单的实例
  • lib存放的是activeMQ所需jar包
  • webapps用于存放项目的目录
3).启动服务:进到bin目录下,找到对应的操作系统位数(32/64),找到启动文件“activemq.bat”,双击即可启动,启动后可查看到基本信息
可看出端口号为8161,ActiveMQ默认启动时,启动了内置的jetty服务器,提供一个用于监控ActiveMQ的admin应用。
在浏览器输入该地址:http://127.0.0.1:8161/admin/,用户名与密码为:admin,登录进去
在该监控后台,你可以监控到ActiveMQ的使用情况,如 Queues | Topics | Subscribers等的使用信息,具体如何使用该监控,下篇会结合具体实例来展现监控的作用与用法。
4).关闭ActiveMQ服务:在命令窗口按住Ctrl+Shift+C,输入Y即可关闭。
至此:ActiveMQ的简单介绍就已经全部完成,文字知识都是简单的,难的是要如何运用,下篇就讲解如何把ActiveMQ应用到自己项目中,下篇示例框架:SpringMVC+MyBatis+ActiveMQ,让我们一起期待吧!
 
2
2
分享到:
评论
1 楼 InJavaWeTrust 2017-05-02  

相关推荐

    ActiveMQ.rar

    包括:基本概念、消息结构、可靠性机制、PTP、Pub/Sub、API结构、JMS应用开 发的基本步骤、持久和非持久的Topic等 n 四:用ActiveMQ构建应用 包括:多种启动Broker的方法、单独应用的开发、结合Spring的开发等 n 五...

    springCloud

    服务介绍: 1) 服务的注册与发现 Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中涉及的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式...

    PearMQ:利用对等连接模型的消息队列替代(ActiveMQ)

    它将REST Web服务的简单性与JMS的性能和可管理性结合在一起,而无需其他中间件基础结构。 为什么要点对点? 传统上,计算机系统以客户端-服务器模型进行通信。 这是在大型系统和使用其服务的客户之间进行通信的最...

    java开源包1

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包10

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包8

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    JAVA上百实例源码以及开源项目源代码

     Java编写的HTML浏览器源代码,一个很简单甚至不算是浏览器的HTML浏览器,使用方法:  可直接输入文件名或网络地址,但必需事先连入网络。 Java编写的山寨QQ,多人聊天+用户在线 21个目标文件 摘要:JAVA源码,...

    java开源包11

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包2

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包3

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包6

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包5

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包4

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包7

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包9

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包101

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    Java资源包01

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    JAVA上百实例源码以及开源项目

     Java编写的HTML浏览器源代码,一个很简单甚至不算是浏览器的HTML浏览器,使用方法:  可直接输入文件名或网络地址,但必需事先连入网络。 Java编写的山寨QQ,多人聊天+用户在线 21个目标文件 摘要:JAVA源码,...

Global site tag (gtag.js) - Google Analytics