首页 > 其他分享 >ActiveMQ

ActiveMQ

时间:2023-01-04 21:01:28浏览次数:56  
标签:http License ## ActiveMQ admin activemq

ActiveMQ初体验

首先介绍下MQ,MQ英文名MessageQueue,中文名也就是大家用的消息队列,干嘛用的呢,
说白了就是一个消息的接受和转发的容器,可用于消息推送。

下面介绍主题,就是今天为大家介绍的ActiveMQ:

他是Apache出品的一个开源的消息队列软件,运行在JVM下,支持多种语言,如JAVA,C++,C#。

现在先为大家介绍下如何配置ActiveMQ的服务器端:

1、当然是下载软件了

去官方网站下载:​​http://activemq.apache.org/​​​ 我下载的是apache-activemq-5.8.0-bin 5.8版本,
当然开源的也是支持下载source的,需要自己编译下,这里不做过多介绍

2、解压后,进入\apache-activemq-5.8.0\bin\win32启动activemq.bat。
系统会自动执行启动过程,当然一般安装失败的情况是没有装JVM环境

3、打开浏览器输入​​http://localhost:8161/admin/​​默认配置是这个,当然你也可以更改这个配置

3、在ActiveMQ中,有两个概念,一个是生产者(Producer),另一个是消费者(Consumer),
生产者就是我们常说的发布者,而消费者,就是订阅者,
这样解释可能更好理解一下吧,
如果知道发布订阅模式的话,不知道的话,字面意思也很好理解,发布者就是发布消息的,
而订阅者通过订阅事件,将消息接收到;

​http://blog.sina.com.cn/s/blog_4b5bc0110100kb8d.html​​​一:jms介绍
         jms说白了就是java message service,是J2EE规范的一部分,跟jdbc差不多,sun只提供了接口,
   由各个厂商(provider)来进行具体的实现,然后使用者使用他们的jar包进行开发使用即可。
        另外在jms的API中,jms传递消息有两种方式,一种是点对点的Queue,还有一个是发布订阅的Topic方式。区别在于:
        对于Queue模式,一个发布者发布消息,下面的接收者按队列顺序接收,比如发布了10个消息,两个接收者A,B那就是A,B总共会收到10条消息,不重复。
        对于Topic模式,一个发布者发布消息,有两个接收者A,B来订阅,那么发布了10条消息,A,B各收到10条消息。
       关于api的简单基础可以看下:​​http://www.javaeye.com/topic/64707​​,简单的参考!
二:ActiveMQ介绍
         activeMQ是apache下的一个开源jms产品,具体参见 apache官方网站;
         Apache ActiveMQ is fast, supports many  Cross Language Clients and Protocols ,
   comes with easy to use  Enterprise Integration Patterns   and many  advanced features  
   while fully supporting  JMS 1.1   and J2EE 1.4. Apache ActiveMQ is released under the  Apache   2.0 License
三:开始实现代码
       1:使用activeMQ来完成jms的发送,必须要下载activeMQ,然后再本机安装,并且启动activeMQ的服务才行。
    在官网下载完成之后,运行bin目录下面的activemq.bat,将activeMQ成功启动。
       启动成功之后可以运行:​​​http://localhost:8161/admin/index.jsp​​​  查看一下。
       2:发送端,sender

 

​http://www.blogjava.net/pzxsheng/archive/2013/03/15/396462.html​​ActiveMQ使用笔记(一)ActiveMQ的安装

安装要求:

部署需要jdk1.5及以上,编译需要jdk1.5(java5)及以上

Java的环境变量(JAVA_HOME)必须设置,即jdk安装的目录,比如c:\Program Files\jdk.1.6

下载ActiveMQ:​​http://activemq.apache.org/download.html​

解压
运行bin文件夹下的activemq.bat

验证是否运行成功:

在浏览器中输入:​​http://localhost:8161/admin/​​,出现如下图所示表示成功:

此时,ActiveMQ已经安装完成了,接下来配置登录监视控制台的用户名和密码。

打开conf文件夹下的jetty.xml,找到

    <bean id="securityConstraint">

        <property name="name" value="BASIC" />

        <property name="roles" value="admin" />

        <property name="authenticate" value="false" />

    </bean>
把authenticate属性的值改成true即可,重启activemq.bat,再登录监视控制台,就需要输入密码了,默认的用户名和密码是admin/admin。roles属性指的是登录的用户角色,这些登录的用户在jetty-realm.properties配置。

修改web的访问端口,在jetty.xml找到一下配置,修改8161即可。

        <property name="connectors">
            <list>
                <bean id="Connector" class="org.eclipse.jetty.server.nio.SelectChannelConnector">
                    <property name="port" value="8161" />
                </bean>
            </list>
        </property>
ActiveMQ的运行日志存放在data文件夹下的activemq.log中。
 

Linux和Aix系统下的安装:

解压:tar zxvf activemq-x.x.x.tar.gz,进入bin文件夹,运行:./activemq start &,也可以只运行:./activemq console。

验证方式和安全性配置和windows下的配置一样

activeMQ密码配置 
​​​http://blog.163.com/czg_e/blog/static/4610456120133109443755/​

ActiveMQ使用的是jetty服务器, 打开conf/jetty.xml文件,找到
<bean id="securityConstraint" class="org.eclipse.jetty.http.security.Constraint">
        <property name="name" value="BASIC" />
        <property name="roles" value="admin" />
        <property name="authenticate" value="false" />
</bean>
将property name为authenticate的属性value="false" 改为"true",
控制台的登录用户名密码保存在conf/jetty-realm.properties文件中,内容如下:
## ---------------------------------------------------------------------------
## Licensed to the Apache Software Foundation (ASF) under one or more
## contributor license agreements.  See the NOTICE file distributed with
## this work for additional information regarding copyright ownership.
## The ASF licenses this file to You under the Apache License, Version 2.0
## (the "License"); you may not use this file except in compliance with
## the License.  You may obtain a copy of the License at
##
## ​​​http://www.apache.org/licenses/LICENSE-2.0​​​##
## Unless required by applicable law or agreed to in writing, software
## distributed under the License is distributed on an "AS IS" BASIS,
## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
## See the License for the specific language governing permissions and
## limitations under the License.
## ---------------------------------------------------------------------------
# Defines users that can access the web (console, demo, etc.)
# username: password [,rolename ...]
admin: admin, admin

值得注意的是 用户名和密码的格式是

用户名 : 密码 ,角色名

​http://www.blogjava.net/pzxsheng/archive/2013/03/15/396462.html​

 



标签:http,License,##,ActiveMQ,admin,activemq
From: https://blog.51cto.com/u_15147537/5989256

相关文章

  • SpringBoot2.x系列教程60--SpringBoot整合消息队列之ActiveMQ环境配置
    SpringBoot2.x系列教程60--SpringBoot整合消息队列之ActiveMQ环境配置作者:一一哥我在上一章节中,给大家介绍了JMS协议及消息中间件,消息队列等概念,本节中我会介绍ActiveMQ的概......
  • SpringBoot2.x系列教程61--SpringBoot整合消息队列之ActiveMQ代码实现异步消息传递及
    SpringBoot2.x系列教程61--SpringBoot整合消息队列之ActiveMQ代码实现消息传递作者:一一哥我在上一章节中,给大家介绍了ActiveMQ,本节中我会介绍SpringBoot中如何整合ActiveMQ......
  • 七、activemq整合springmvc之queue
    一、前言spring代码基于​​SSM整合(spring-springmvc-mybatis)之CRUD ​​;代码地址:(基础版本:​​https://gitee.com/joy521125/ssm-senior-base.git​​​maven版:​​htt......
  • ActiveMQ架构设计与最佳实践
    ActiveMQ是最常用、特性最丰富的消息中间件,通常用于消息异步通信、调用解耦等多种场景,是JMS规范的实现者之一。 一、架构设计概要  ActiveMQ提供两种可供实施的架构模......
  • ActiveMQ经典的使用模式(利用多线程处理消费端)
    今天看视频,里面讲了一个经典的例子,是工作中很常用的,特此将这种模式记录下来.这个例子使用了ActiveMQ的选择器,也使用了之前学的自定义线程池.队列的使用,而且很好的利......
  • activemq环境搭建
    1:下载activemq安装包 https://archive.apache.org/dist/activemq/5.16.3/apache-activemq-5.16.3-bin.zip2:上传activemq安装到服务器指定目录进行unzip apache-active......
  • ActiveMQ消息中间件的使用
    一、ActiveMQ的介绍。ActiveMQ是Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ是一个完全支持JMS1.1和J2EE1.4规范的JMSProvider实现。1、主要特点:......
  • 八、activemq整合springmvc之topic
    一、前言spring代码基于SSM整合(spring-springmvc-mybatis)之CRUD ;代码地址:(基础版本:https://gitee.com/joy521125/ssm-senior-base.gitmaven版:https://gitee.com/joy52......
  • activemq-cpp getCMSType类型判断是否有效
    场景   CMS消息类型有BytesMessage,TextMessage,MapMessage,StreamMessage,是否可以通过getCMSType知道是哪一个类型的消息?答案    不行,依然需要通过constcms::By......
  • This class is not trusted to be serialized as ObjectMessage payload.ActiveMQ序列
    引子ObjectMessage引入的生产者和消费者之间的类路径耦合,ActiveMQ支持他们作为JMS规范的一部分。ObjectMessage对象依赖marshal/unmarshal进行java序列化,这个过程是......