SpringBoot(15) - - SpringBoot整合ActiveMq(整合)

本文介绍了如何在SpringBoot中整合ActiveMq,包括点对点消息发送和接收,发布/订阅模式的实现,并通过实际应用模拟展示了消息在不同应用程序间的传递和消费特性,探讨了消息队列在服务解耦合、提高并发能力等方面的作用。
摘要由CSDN通过智能技术生成

项目路径:https://github.com/zhaopeng01/springboot-study/tree/master/study_15

序言

用来在服务和服务之间进行异步通信的一种技术,采用TCP通信协议,
为了进一步提高网站性能,提高网站并发能力,提高网站可用性,可以使用mq消息中间件进行流量削峰,异步通信,任务的异步处理,服务解耦合等

安装

去官网下载tar.gz包,放到自己喜欢的地方去
地址:下载5.15.9

然后进入路径: apache-activemq-5.15.9/bin/macosx
我的路径是: /Users/zhaopeng/develop/mq/apache-activemq-5.15.9/bin/macosx

启动并访问ActiveMq

通过命令启动: ./activemq start
在浏览器中输入URL: http://localhost:8161/
点击 Manager ActiveMQ boker 输入用户名:admin 密码admin
然后就可以看到下图,就代表启动ok了
登陆成功

解释下上面图片中控制台这些按钮的基本信息:
    Home:查看 ActiveMQ 的常见信息
    Queues:查看 ActiveMQ 的队列信息
    Topics:查看 ActiveMQ 的主题信息
    Subscribers:查看主题的订阅者信息
    Connections:查看 ActiveMQ 客户端的连接信息
    Network:查看 ActiveMQ 的网络信息
    Scheduled:查看 ActiveMQ 的定时任务
    Send:用于通过表单方式向队列或者主题发送具体的消息

正文

依赖
<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-activemq</artifactId>
</dependency>
点对点发送消息

这个队列是不需要我们提前定义好的,它会在我们需要的时候动态的创建

package com.zyc.active;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jms.core.JmsTemplate;
import org.springframework.stereotype.Component;

/**
 * @description: 点对点发送消息
 *
 * @author zhaopeng
 * @date 2019/4/9
 */
@Component
public class O2OSend {
   

    @Autowired
    private JmsTemplate jmsTemplate;

    public void send(String message) {
   
        jmsTemplate.convertAndSend("zyc", message);
    }
}
点对点接收消息
package com.zyc.active;

import org.springframework.jms.annotation.JmsListener;
import org.springframework.stereotype.Component;

/**
 * @description: 点对点接收消息
 *
 * @author zhaopeng
 * @date 2019/4/9
 */
@Component
public class O2OReceive {
   
    @JmsListener(destination = "zyc")
    public void receive(String message) {
   
        System.out.println
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值