rabbitmq的安装和使用-windows版本

首先! RabbitMQ 需要 Erlang 语言,所以想要在电脑上运行 RabbitMQ,就需要安装 Erlang 语言的环境,所以就有一个很重要的问题,版本对应问题!参看官方文档,版本选的对,报错少一半

https://www.rabbitmq.com/docs/which-erlang

确定好版本之后,下面开始正式安装


1. 在 Windows 上安装 RabbitMQ

RabbitMQ 需要 Erlang 运行时环境,因此需要先安装 Erlang,再安装 RabbitMQ。

1.1 安装 Erlang
  1. 下载 Erlang 安装包:

  2. 安装完成后,记住bin目录的位置,在环境变量的PATH中加上这个路径就好了,不用像JAVA一样弄一个JAVA_HOME,直接加上就好了,然后控制台上面输入:erl -version 检查是否成功:

    bash 复制代码
    erl -version

    如果显示版本号,说明安装成功。

1.2 安装 RabbitMQ
  1. 下载 RabbitMQ Windows 安装包:
  2. 运行安装程序,默认选项即可。
  3. 安装完成后,RabbitMQ 会作为 Windows 服务自动启动。
1.3 启用 RabbitMQ 管理界面

RabbitMQ 默认不带 Web 管理界面,需要手动启用(从这里开始,最好使用管理员身份运行cmd):

bash 复制代码
# 进入 RabbitMQ 安装目录(默认:C:\Program Files\RabbitMQ Server\rabbitmq_server-{version}\sbin)
cd "你安装的位置\sbin"

# 启用管理插件
rabbitmq-plugins enable rabbitmq_management

访问管理界面(访问不成功没关系,重启就好了):

  • 打开浏览器访问 http://localhost:15672
  • 默认用户名/密码:guest / guest
1.4 常用 RabbitMQ 命令
bash 复制代码
# 启动 RabbitMQ 服务(如果未自动启动)
net start RabbitMQ

# 停止 RabbitMQ 服务
net stop RabbitMQ

2. 在 Spring Boot 中使用 RabbitMQ

Spring Boot 提供了 spring-boot-starter-amqp 来简化 RabbitMQ 集成。

2.1 添加依赖

pom.xml 中添加:

xml 复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
2.2 配置 RabbitMQ

application.yml 中配置:

yaml 复制代码
spring:
  rabbitmq:
    host: localhost
    port: 5672
    username: guest
    password: guest
    virtual-host: /  # 默认虚拟主机
2.3 发送消息(Producer)
java 复制代码
import org.springframework.amqp.core.Queue;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Component;

@Component
public class RabbitMQProducer {

    private final RabbitTemplate rabbitTemplate;

    public RabbitMQProducer(RabbitTemplate rabbitTemplate) {
        this.rabbitTemplate = rabbitTemplate;
    }

    // 定义队列
    @Bean
    public Queue myQueue() {
        return new Queue("myQueue", true); // true 表示持久化
    }

    // 发送消息
    public void sendMessage(String message) {
        rabbitTemplate.convertAndSend("myQueue", message);
        System.out.println("发送消息: " + message);
    }
}
2.4 接收消息(Consumer)
java 复制代码
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.stereotype.Component;

@Component
public class RabbitMQConsumer {

    @RabbitListener(queues = "myQueue")
    public void receiveMessage(String message) {
        System.out.println("收到消息: " + message);
    }
}
2.5 测试

在 Controller 中测试:

java 复制代码
@RestController
public class TestController {

    private final RabbitMQProducer producer;

    public TestController(RabbitMQProducer producer) {
        this.producer = producer;
    }

    @GetMapping("/send")
    public String sendMessage(@RequestParam String msg) {
        producer.sendMessage(msg);
        return "消息已发送: " + msg;
    }
}

访问 http://localhost:8080/send?msg=HelloRabbitMQ,控制台会打印:

复制代码
发送消息: HelloRabbitMQ
收到消息: HelloRabbitMQ

现在你的 Spring Boot 应用已经可以生产和消费 RabbitMQ 消息了!

相关推荐
小江的记录本6 小时前
【Kafka核心】架构模型:Producer、Broker、Consumer、Consumer Group、Topic、Partition、Replica
java·数据库·分布式·后端·搜索引擎·架构·kafka
蚰蜒螟6 小时前
深入 Linux 内核同步机制:从 futex 到 spinlock 的完整旅程
linux·windows·microsoft
dllmayday7 小时前
Linux 上用终端连接 WiFi
linux·服务器·windows
身如柳絮随风扬13 小时前
多数据源切换实战:从业务场景到3种实现方案全解析
java·分布式·微服务
Curtain_Gin13 小时前
windows nvim lazy
windows
AIMath~15 小时前
雪花算法+ZooKeeper解决方案+RPC是什么
分布式·zookeeper·云原生
KmSH8umpK15 小时前
Redis分布式锁从原生手写到Redisson高阶落地,附线上死锁复盘优化方案进阶第六篇
数据库·redis·分布式
生而为虫16 小时前
Claude Code 最新版安装教程(Windows/Mac/Linux 全平台) 面向普通用户的 Claude Code 安装与模型接入指南
linux·windows·macos
DevilSeagull16 小时前
Windows 批处理 (Batch) 编程: 从入门到入土. (一) 基础概念与环境配置
开发语言·windows·后端·batch·语言
空中海16 小时前
Kafka :存储、复制与可靠性
分布式·kafka·linq