ActiveMQ安装以及使用

同步索引库分析

方案一:在taotao-manager中,添加商品的业务逻辑中,添加一个同步索引库的业务逻辑。
缺点:业务逻辑耦合度高,业务拆分不明确
方案二:业务逻辑在taotao-search中实现,调用服务在taotao-manager实现。业务逻辑分开。
缺点:服务之间的耦合度变高。服务的启动有先后顺序。
方案三:使用消息队列。MQ是一个消息中间件
MQ是一个消息中间件,常见的有ActiveMQ、RabbitMQ、kafka

ActiveMQ安装以及使用_第1张图片

什么是ActiveMQ

MQ是一个消息中间件,实现系统之间的通信和解耦
ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,尽管JMS规范出台已经是很久的事情了,但是JMS在当今的J2EE应用中间仍然扮演着特殊的地位
特点

  1. 多种语言和协议编写客户端。语言: Java, C, C++, C#, Ruby, Perl, Python, PHP。应用协议: OpenWire,Stomp REST,WS Notification,XMPP,AMQP
  2. 完全支持JMS1.1和J2EE 1.4规范 (持久化,XA消息,事务)
  3. 对Spring的支持,ActiveMQ可以很容易内嵌到使用Spring的系统里面去,而且也支持Spring2.0的特性
  4. 通过了常见J2EE服务器(如 Geronimo,JBoss 4, GlassFish,WebLogic)的测试,其中通过JCA 1.5 resource adaptors的配置,可以让ActiveMQ可以自动的部署到任何兼容J2EE 1.4 商业服务器上
  5. 支持多种传送协议:in-VM,TCP,SSL,NIO,UDP,JGroups,JXTA
  6. 支持通过JDBC和journal提供高速的消息持久化
  7. 从设计上保证了高性能的集群,客户端-服务器,点对点
  8. 支持Ajax
  9. 支持与Axis的整合
  10. 可以很容易得调用内嵌JMS provider,进行测试

ActiveMQ的消息形式

对于消息的传递有两种类型

  1. 一种是点对点的,即一个生产者和一个消费者一一对应
  2. 另一种是发布/订阅模式(广播模式),即一个生产者产生消息并进行发送后,可以由多个消费者进行接收

JMS定义了五种不同的消息正文格式,以及调用的消息类型,允许你发送并接收以一些不同形式的数据,提供现有消息格式的一些级别的兼容性。
  · StreamMessage – Java原始值的数据流
  · MapMessage–一套名称-值对
  · TextMessage–一个字符串对象
  · ObjectMessage–一个序列化的 Java对象
  · BytesMessage–一个字节的数据流

ActiveMQ的安装

进入http://activemq.apache.org/下载ActiveMQ,使用的版本是5.12.0(apache-activemq-5.12.0-bin.tar.gz)
安装环境

  1. 需要jdk
  2. 安装Linux系统

安装步骤

  1. 在环境里面安装jdk
    https://blog.csdn.net/weixin_42869365/article/details/83894210
  2. 注意关闭防火墙,修改i18n为GBK
  3. 把ActiveMQ 的压缩包上传到Linux的/usr/activemq下,解压缩
apache-activemq-5.12.0-bin.tar.gz
  1. 在apache-activemq-5.12.0文件夹下的文件如下。
    注意:如果ActiveMQ整合spring时,pom文件依赖activemq-all-5.12.0.jar包。建议使用5.11.2
    ActiveMQ安装以及使用_第2张图片

  2. 在/usr/activemq/apache-activemq-5.12.0/bin目录下启动

./activemq start
./activemq status
./activemq stop
  1. 进入管理后台:http://192.168.25.132:8161/admin
    用户名:admin 密码:admin
    ActiveMQ安装以及使用_第3张图片

  2. 点击home/Queues/topics…的时候会报503错误,原因是你的机器名和IP地址没有对应上
    ActiveMQ安装以及使用_第4张图片

  3. 修改hosts文件,vim /etc/hosts,配置IP和域名的映射关系

  4. 如下显示域名(机器名),但不一定就是正确的
    在这里插入图片描述
    真正对的域名所在位置文件 vim /etc/sysconfig/network

[root@activemq sysconfig]# vim network
NETWORKING=yes
HOSTNAME=activemq
  1. 修改hosts文件,vim /etc/hosts,配置IP和域名的映射关系
    在这里插入图片描述

  2. 重新启动activemq服务就可以解决上面的503错误
    ActiveMQ安装以及使用_第5张图片

ActiveMQ使用

topic是广播形式,queue是点对点的形式
ActiveMQ安装以及使用_第6张图片

你可能感兴趣的:(软件安装)