【黑马点评】 使用RabbitMQ实现消息队列——1.Docker与RabbitMQ环境安装

news2024/11/29 9:46:44

黑马点评中,使用基于Redis的Stream实现消息队列,但是Strema已经不太常用。在此修改为使用RabbitMQ实现消息队列。主要包括RabbitMQ的环境准备(Docker的下载与安装)以及如何修改黑马点评中的代码。

【黑马点评】使用RabbitMQ实现消息队列——1 docker与RabbitMQ环境安装

  • 1 环境准备
    • 1.1 安装docker
      • 1.1.1 安装启用Hyper-V
      • 1.1.2 下载安装Docker
    • 1.2 安装RabbitMQ

1 环境准备

1.1 安装docker

注意,由于我的电脑是Win11家庭版,没有Hyper-V,因此需要自己安装并启用Hyper-V

【Docker】掌握 Docker魔法:Windows 11 平台上的完美容器部署终极指南_win11安装docker-CSDN博客

超详细Windows11家庭中文版系统安装Docker-20230401_windows11安装docker-CSDN博客

1.1.1 安装启用Hyper-V

Windows11家庭版上安装Hyper-V并导入虚拟机的方法_windows11家庭中文版启用hiperv-CSDN博客

(1)下载并安装

在桌面新建Hyper-V Instarller.cmd文件,文件内容如下

pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL

建好后右键选择以管理员身份运行

在这里插入图片描述

运行后,最后输入Y重启计算机

在这里插入图片描述

重启后,在搜索框输入启用或关闭Windows功能,然后找到Hyper-V,启用Hyper-V

在这里插入图片描述

同时注意勾选Windows虚拟机监控程序平台,适用于Linux的Windows子系统和虚拟机平台,重启生效

在这里插入图片描述

1.1.2 下载安装Docker

1、官网下载docker文件Get Started | Docker,选择download for windows下载。

Release notes | Docker Docs

在这里插入图片描述

在这里插入图片描述

2、双击打开下载好的文件Docker Desktop Installer.exe,add shortcut to desktop选择√代表同意添加快捷键到桌面,如果不勾选就说明不创建快捷键,大家根据自己需求选择就行。之后点击

在这里插入图片描述

3、等待一会后会出现下图所示说明安装成功,选择Close and restart 关闭这个界面重启电脑

在这里插入图片描述

  1. 电脑重启后,点击Docker程序会看到如下界面,选择Accpet

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

安装成功,注册一下docker账号后登录

在这里插入图片描述

登陆成功。

在这里插入图片描述

此时,进入命令行,输入如下命令docker --version,输出如下则说明安装成功。

在这里插入图片描述

1.2 安装RabbitMQ

打开命令行,输入以下命令:docker pull rabbitmq:management

在这里插入图片描述

如果想要实现数据持久化,需要添加以下两个命令,不需要的话可以把这两个命令去掉
-v d:/rabbitmq/data:/var/lib/rabbitmq/mnesia/ 挂载宿主机目录到容器目录中
–hostname my_rabbit 指定hostname的名称,因为RabbitMQ的mnesia目录中文件夹名称的一部分是hostname,如果不定义的话,是随机生成的,后续如果重新创建容器,因为挂机目录文件夹名称不一样,就无法保持新旧容器的数据一致。

创建容器并运行

语法 docker run -dit --name {自定义镜像名称} -e RABBITMQ_DEFAULT_USER={用户名} -e RABBITMQ_DEFAULT_PASS={密码} -p {管理界面端口} -p {服务端口} rabbitmq:management

docker run -dit --name rabbitmq -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=123456 -p 15672:15672 -p 5672:5672 rabbitmq:management

浏览器地址栏输入 http://localhost:15672 ,登录 RabbitMQ 管理界面。如下图则表示安装成功。

在这里插入图片描述

docker中也能看到添加的RabbitMQ

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2192008.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Java数据结构】栈 (Stack)

【本节目标】 1. 栈的概念及使用 2. 相关 OJ 题 一、概念 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last…

C语言—单链表

目录 一、链表的概念及结构 二、单链表实现 (2.1)基本结构定义 (2.2)申请节点 (2.3)打印函数 (2.4)头部插入删除\尾部插入删除 (2.4.1)尾部插入 &…

Anaconda的安装与环境设置

文章目录 一、Anaconda介绍二、Anaconda环境搭建1. 下载Anaconda(1)官网下载(2)清华大学镜像 2. 安装Anaconda3.配置环境变量4.检验conda是否安装成功5.更改镜像源6.若菜单栏没有conda prompt 三、虚拟环境1.创建、查看、删除虚拟环境2.激活、退出虚拟环境 四、CUDA、Pytorch、…

基于SpringBoot+Vue的酒店客房管理系统

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…

qemu-system-aarch64开启user用户模式网络连接

一、问题 在使用qemu构建arm64的虚拟机时,虚拟机没有网络,桥接方式相对麻烦,我只是需要联网更新即可。与宿主机的通信我使用共享文件夹即可满足要求。 使用指令启动虚拟机时,网络部分的参数为 -net user,hostfwdtcp::10022-:22 …

白板2-数学基础

高斯分布1-极大似然估计 高斯分布2-极大似然估计-无偏&有偏 高斯分布3-从概率密度角度高斯分布4-局限性高斯分布5-边缘概率及条件概率高斯分布6-求联合概率分布

八大排序--01冒泡排序

假设有一组数据 arr[]{2,0,3,4,5,7} 方法:开辟两个指针,指向如图,前后两两进行比较,大数据向后冒泡传递,小数据换到前面。 一次冒泡后,数组中最大…

codetop标签动态规划大全C++讲解(四)!!动态规划刷穿地心!!学吐了家人们o(╥﹏╥)o

一天复习一篇,个人学习记录 1.最大子数组和2.最长的斐波那契子序列的长度3.最大正方形4.最长有效括号5.乘积最大子数组6.可被三整除的最大和7.回文子串数目8.最长回文子序列9.最长回文子串 1.最大子数组和 给你一个整数数组 nums ,请你找出一个具有最大…

SpringBoot在线教育平台:设计与实现的深度解析

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统,它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等,非常…

【JAVA开源】基于Vue和SpringBoot的教学资源库系统

本文项目编号 T 067 ,文末自助获取源码 \color{red}{T067,文末自助获取源码} T067,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析5.4 用例设计5.4.1 管…

654、最大二叉树

1、题目描述 . - 力扣(LeetCode) 其实就是给定了一个所谓"最大二叉树"的规则,让我们去构建二叉树。 以 nums [3,2,1,6,0,5] 为例,规则如下: (1)找出其中的最大值6将其作为根节点,6前面的是左子…

自动驾驶系列—线控系统:驱动自动驾驶的核心技术解读与应用指南

🌟🌟 欢迎来到我的技术小筑,一个专为技术探索者打造的交流空间。在这里,我们不仅分享代码的智慧,还探讨技术的深度与广度。无论您是资深开发者还是技术新手,这里都有一片属于您的天空。让我们在知识的海洋中…

工具 | 红队大佬亲测5款推荐的Burpsuite插件

*免责声明:* *本文章仅用于信息安全技术分享,请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作…

基于SpringBoot+Vue+MySQL的校园二手物品交易系统

系统展示 用户前台界面 管理员后台界面 系统背景 校园二手物品交易系统开发的背景与重要性随着高等教育的蓬勃发展,大学生群体的规模持续扩大,随之而来的是物品更新换代速度的显著加快。学生们在追求新潮、高品质生活的同时,往往会产生大量闲…

微信步数C++

题目: 样例解释: 【样例 #1 解释】 从 (1,1) 出发将走 2 步,从 (1,2) 出发将走 4 步,从 (1,3) 出发将走 4 步。 从 (2,1) 出发将走 2 步,从 (2,2) 出发将走 3 步,从 (2,3) 出发将走 3 步。 从 (3,1) 出发将…

llm接口高可用工程实践(尽快关注我,以后这些文章将只对粉丝开放)

上一节课程链接:中文llama3仿openai api实战-CSDN博客 ,本文是在上一节基础上继续操作 课程介绍 本文基于Chinese-LLaMA-Alpaca-3(https://github.com/ymcui/Chinese-LLaMA-Alpaca-3)项目,介绍如何通过搭建2个llama3…

生信初学者教程(二十五):验证候选特征

文章目录 介绍加载R包导入数据函数重要特征的表达ROC分析汇总筛选结果输出结果总结介绍 在成功识别出核心特征之后,为了验证这些特征的有效性和可靠性,我们在发现数据集和验证数据集上进行了进一步的评估。这一步骤旨在确保这些特征在不同数据集上的表达值具有一致性,并验证…

大模型时代下小模型知多少?从模型结构、预训练数据到运行时成本分析总结

今天,我们来谈谈小模型。《Small Language Models综述,Small Language Models: Survey, Measurements, and Insights》:https://arxiv.org/pdf/2409.15790这个工作,会有一些启发。 本文主要介绍三个话题,一个是小模型…

【笔记】信度检验

一、信度 信度是指测量结果的一致性和稳定性。 1.一致性(Consistency) 一致性指的是测量工具内部各个部分或项目之间的协调一致程度。高一致性意味着测量工具的不同部分都在测量同一个概念或特质。 例子:智力测试 假设我们有一个包含100…

成为AI产品经理,应该具备哪些条件?

开篇勘误标题:未来不会有AI产品经理这个岗位,就像没有移动产品经理一样。 如果你是个产品经理,但是不懂移动端的产品交互和设计,那你就只能在自己的头衔前面加上一个“PC”:PC产品经理,代表你的细分或者不…