RabbitMQ 安装(在docker容器中安装)

为什么要用?

RabbitMQ是一个开源的消息代理和队列服务器,主要用于在不同的应用程序之间传递消息。它实现了高级消息队列协议(AMQP),并提供了一种异步协作机制,以帮助提高系统的性能和扩展性。 RabbitMQ的作用主要体现在以下几个方面:

1. 异步处理:通过将消息写入消息队列,可以将非必要的业务逻辑以异步的方式运行,从而加快响应速度。

2. 削峰:在并发量大的情况下,RabbitMQ可以有效地控制消息队列的长度,从而限制请求的数量,缓解系统在高并发情况下的压力。

3. 解耦:RabbitMQ可以帮助实现系统与系统之间的解耦,降低系统之间的耦合度。例如,在订单系统中,用户下单后的业务逻辑可能包括扣减库存、生成单据、发红包和发短信通知等。通过RabbitMQ,这些逻辑可以拆分出来异步执行,提高系统性能。 4. 灵活的路由:RabbitMQ支持多种消息路由方式,如直接路由(direct)、主题路由(topic)等,可以根据实际需求进行灵活配置。

5. 跨平台、跨语言:RabbitMQ支持多种编程语言和平台,所有主要的编程语言均有与代理接口通讯的客户端库。

6. 高可用性:RabbitMQ具有良好的可扩展性和故障转移能力,可以确保系统在出现故障时仍能正常运行。 总之,RabbitMQ的作用在于提供一种高效、可靠、灵活的消息传递机制,以支持复杂的业务场景和大规模系统的运行。通过使用RabbitMQ,可以提高系统的性能、扩展性和稳定性,降低系统间的耦合度,使开发人员能够更加专注于业务逻辑的实现。

安装

docker pull rabbitmq:3.8    (版本为:3.8)

创建容器:

docker run -di --name=MyRabbitMq -p 15672:15672 -p 5672:5672 -e RABBITMQ_DEFAULT_USER=root -e RABBITMQ_DEFAULT_PASS=root d8ffe4d50229

docker run -di --name=取名称 -p 15672:15672 -p 5672:5672   -e RABBITMQ_DEFAULT_USER=账号  -e RABBITMQ_DEFAULT_PASS=密码  镜像ID或镜像名称
 docker ps   //查看运行中的容器docker exec -it 容器id /bin/bash   进入rabbitmq容器rabbitmq-plugins enable rabbitmq_management   在容器内安装一个插件exit   //退出容器
docker ps

知识点:

15691:是图像化界面

5671:是接受消息和发送消息的界面

图形化界面访问:http://192.168.56.10:15672/#/

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Instrumentation 是什么?和 ActivityThread 是什么关系?

Instrumentation 可以理解为应用进程管家,ActivityThread 要执行创建或暂停某个 Activity 的操作时,都需要通过 Instrumentation 来进行具体的操作,即回调 Activity 的生命周期。 每一个应用程序只有一个 Instrumentation 对象,每…

17 redis集群方案

1、RedisCluster分布式集群解决方案 为了解决单机内存,并发等瓶颈,可使用此方案解决问题. Redis-cluster是一种服务器Sharding技术,Redis3.0以后版本正式提供支持。 这里的集群是指多主多从,不是一主多从。 2、redis集群的目标…

Rust UI开发(二):iced中如何为窗口添加icon图标

注:此文适合于对rust有一些了解的朋友 iced是一个跨平台的GUI库,用于为rust语言程序构建UI界面。 想要了解如何构建简单窗口的可以看本系列的第一篇: Rust UI开发:使用iced构建UI时,如何在界面显示中文字符 本篇是系…

哦?是吗|兜兜转转,最后还是选择了盖雅排班系统

在之前发布的和「人效案例集」中,我们为大家呈现了很多关于人效提升的理论方法,以及各家企业的人效提升提升实践。 回过头来,我们发现:排班管理渗透于人效九宫格之中,也因此成为很多企业人效提升的一个重要中介&#x…

《opencv实用探索·二》根据RGB的像素排列来理解图像深度、像素深度和位深度

通常对于RGB图像主要分为RGB16,RGB24和RGB32。RGB16从高位到低位的排列为R->G->B,RGB24和RGB32从高位到低位的排列为B->G->R。 RGB16: 16 位为一个存储单元(一个像素),来存储一个RGB像素;因为人眼对绿色比…

从零学算法400

400.给你一个整数 n ,请你在无限的整数序列 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, …] 中找出并返回第 n 位上的数字。 示例 1: 输入:n 3 输出:3 示例 2: 输入:n 11 输出:0 解释:第…

乐得瑞LDR6020 VR串流线方案:实现同时充电传输视频信号

VR(Virtual Reality),俗称虚拟现实技术,是一项具有巨大潜力的技术创新,正在以惊人的速度改变我们的生活方式和体验,利用专门设计的设备,如头戴式显示器(VR头盔)、手柄、定…

Android Studio 显示build variants工具栏

工具栏: 如下图所示 依次点击View-->ToolWindows-->Build Variants。 在此记个笔记

P8 C++引用

前言 本期我们要讲的是 C 中的引用。 上期我们讨论了指针,如果你没有看过那期内容,你一定要回去看看,因为引用实际上只是指针的扩展,你至少需要在基本层面上理解指针是如何工作的,然后才能继续学习本期的内容&#xf…

「Whale 帷幄」连续入选科技榜单,AGI 冲击波正在加速行业洗牌

以 AGI 为底座,品牌 MarTech 正在经历一场前所未有的深度变革。 近日,弯弓研究院发布「中国 MarTech 500 强榜单」,以 2023 中国营销技术(MarTech)生态为研究对象,洞察行业现象与未来趋势。作为品牌数字化…

Coded Block Pattern

Coded Block Pattern简称CBP,在H264协议7.3.2.1中有介绍,CBP表征了MB中的亮度和色度块的残差做DCT后的系数是否为0的情况,CBP可以拆分为CodedBlockLuma和CodedBlockChroma,分别对应亮度和色度块的残差系数是否为0,它们的具体含义后面会做介绍,首先我们要获取CodedBlockLu…