RabbitMQ学习一【尚硅谷】

news2024/11/15 10:00:40

一、消息队列

1、MQ的相关概念

2、RabbitMQ

2.1 四大核心概念

生产者:
交换机:交换机是 RabbitMQ非常重要的一个部件,一方面它接收来自生产者的消息,另一方面它将消息 推送到队列中。交换机必须确切知道如何处理它接收到的消息,是将这些消息推送到特定队列还是推送到多个队列,亦或者是把消息丢弃,这个得有交换机类型决定
队列:发送到RabbitMQ的消息最终会被存储到队列中;队列仅限主机的内存和磁盘限制的约束
消费者:消费消息的应用

2.2 RabbitMQ的核心部分

在这里插入图片描述

2.3 RabbitMQ名词介绍

在这里插入图片描述

  • Broker:整个RabbitMQ应用就是Broker
  • Vitual host:出于多租户和安全因素设计的,把 AMQP 的基本组件划分到一个虚拟的分组中,类似 于网络中的 namespace 概念。当多个不同的用户使用同一个 RabbitMQ server 提供的服务时,可以划分出多个 vhost,每个用户在自己的 vhost 创建 exchange/queue 等
  • Connection:publisher/consumer 和 broker 之间的 TCP 连接
  • Channel:如果每一次访问 RabbitMQ 都建立一个 Connection,在消息量大的时候建立 TCP Connection 的开销将是巨大的,效率也较低。Channel 是在 connection 内部建立的逻辑连接,如果应用程 序支持多线程,通常每个 thread 创建单独的 channel 进行通讯,AMQP method 包含了 channel id 帮助客 户端和message broker 识别 channel,所以 channel 之间是完全隔离的。Channel 作为轻量级的
    Connection 极大减少了操作系统建立 TCP connection 的开销
  • Exchange:(交换机)根据消息的路由键将消息路由到相应的队列中
  • Queue:(队列)消息最终的目的地,消息在此处被消费者消费
  • Binding: 记录交换机和队列之间的对应关系

2.4 RabbitMQ安装

见我的博客:
https://blog.csdn.net/hc1285653662/article/details/127779385

二、HelloWorld (简单队列模式)

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

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

相关文章

一文详解Linux Python3安装

在公司申请了一台CentOS 7的Linux版本虚拟机,需要安装一个Python3的环境,定期进行特定任务处理。这里对CentOS 7配置Python3环境的步骤进行了记录,供大家参考。 本文基于如下Linux系统版本: 一、默认Python版本 默认情况下&am…

Excelize 2.7.0 发布, 2023 年首个更新

Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Microsoft Excel™ 2007 及以上版本创建的电子表格文档。支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多种文档格式&#xf…

C 程序设计教程(13)—— 顺序结构程序设计练习题

C 程序设计教程(13)—— 顺序结构程序设计练习题 该专栏主要介绍 C 语言的基本语法,作为《程序设计语言》课程的课件与参考资料,用于《程序设计语言》课程的教学,供入门级用户阅读。 目录C 程序设计教程(1…

【openGauss】在openEuler(ARM架构)上安装openGauss(一主两备含CM版)

一、系统版本介绍 当前案例中的openGauss安装,底层操作系统为openEuler-20.03-LTS版本,当前openGauss对Python版本兼容性最好的是Python 3.6版本与Python 3.7版本,该实验使用的openEuler版本自带Python 3.7.4,不需要再自行安装 二…

汽车电子系统网络安全活动

声明 本文是学习GB-T 38628-2020 信息安全技术 汽车电子系统网络安全指南. 下载地址 http://github5.com/view/764而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 汽车电子系统网络安全活动 7.1 概念设计阶段 7.1.1 概述 概念设计阶段的活动流程如图…

房产管理系统分布架构分析

一、数图互通房产管理系统采用分布式架构下的高可用设计: (1)可以避免因单点故障造成系统平台宕机: a、负载均衡技术(failover ,选址,硬件负载,软件负载,去中心化负载(g…

tp5处理前端上传的图片文件

前端上传了一个图片文件,tp5框架如何处理 效果图&#xff1a; 效果图一: 效果图二: 如果需要看前端如何展示、删除上传的缩略图请到此篇博客&#xff1a; 前端&#xff1a; <form id"upload_pic_wrap" target"upload_file" enctype"multipar…

任务间通讯

信号量与邮箱 系统中的多个任务在运行时&#xff0c;经常需要互相无冲突地访问同一个共享资源&#xff0c;或者需要互相支持和依赖&#xff0c;甚至有时还要互相加以必要的限制和制约&#xff0c;才保证任务的顺利运行。因此&#xff0c;操作系统必须具有对任务的运行进行协调…

C++11引入的尾置返回类型

C11引入的尾置返回类型一、什么是尾置返回类型(trailing return type)二、尾置返回的典型场景2.1 常规方式如何返回数组指针2.2 使用尾置返回类型三、尾置返回类型的应用四、总结一、什么是尾置返回类型(trailing return type) 我们先来看一下传统的函数是怎么定义的&#xff…

Leetcode N皇后

题目链接 Leetcode.51 N 皇后 Leetcode.52 N皇后 II N皇后 题目描述 按照国际象棋的规则&#xff0c;皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn的棋盘上&#xff0c;并且使皇后彼此之间不能相互攻击。 给你一个…

如何在Vue组件中调用封装好的外部js文件方法

文章目录1、前言2、抽离基本业务js3、在具体组件中调用3.1 引入3.2 组件中调用3.3 实现的效果4、实际项目中的运用4.1 核心展示将一些常用的方法&#xff0c;比如字符串格式化呀&#xff0c;时间格式话呀&#xff0c;常用的表单验证方法呀等等。可以抽离出为基础的业务。在组件…

【Linux】echo命令用法详解

作者&#xff1a;柒号华仔 个人主页&#xff1a;欢迎访问我的主页 个人信条&#xff1a;星光不问赶路人,岁月不负有心人。 个人方向&#xff1a;专注于5G领域&#xff0c;同时兼顾其他网络协议&#xff0c;编解码协议&#xff0c;C/C&#xff0c;linux等&#xff0c;感兴趣的小…

【MySQL】帮助的使用,清晰地解析——?/help命令

MySQL帮助的使用为什么需要‘帮助’命令实际使用? contents 命令显示可供查询的分类子类别内容展示查阅帮助&#xff08;show命令的使用&#xff09;show 命令的用法展示各个表状态信息展示一个表的字段信息为什么需要‘帮助’命令 某个操作的语法忘记了&#xff0c;快速查找…

禅道研发项目管理系统命令注入漏洞(MPS-2023-0418)

漏洞描述 禅道是一款国产开源项目管理软件。 禅道研发项目管理系统存在系统命令注入漏洞&#xff0c;具有后台登陆权限的攻击者可以利用此漏洞执行任意命令&#xff0c;进而控制服务器。 漏洞名称禅道研发项目管理系统命令注入漏洞漏洞类型命令注入发现时间2023/1/6漏洞影响…

分享48个Go源码,总有一款适合您

Go源码 分享48个Go源码&#xff0c;总有一款适合您 Go源码下载链接&#xff1a;https://pan.baidu.com/s/1FhQ6NzB3TWsv9res1OsJaA?pwdr2d3 提取码&#xff1a;r2d3 下面是文件的名字&#xff0c;我放了一些图片&#xff0c;文章里不是所有的图主要是放不下...&#xff0c;…

【安全】RefererXMLHttpRequest部分内容

目录 Referer Referrer-policy 设置referer 盗链 防盗链的工作原理 防盗链的三种方式 如何绕过图片防盗链 XMLHttpRequest 构造函数 XMLHttpRequest 的实例属性 XMLHttpRequest.readyState XMLHttpRequest.onreadystatechange XMLHttpRequest.response XMLHttpRe…

如何从区块链上数据识别出套利行为或者抢跑三明治交易

如何识别链上套利行为或者抢跑夹子三明治行为或交易 识别原子 MEV交易 鉴于交易可以任意复杂并且可以有无数未知交易模式&#xff0c;使用特定交易模式匹配的方法无法应对新的 MEV 模式。为了确定交易中是否发生套利&#xff0c;我们需要对交易进行通用抽象。 以下是我们为认…

【Java寒假打卡】Java基础-集合Set

【Java寒假打卡】Java基础-集合Set概述哈希值hashSet原理HashSet存储学生对象并遍历小结概述 底层数据结构是哈希表不能保证存储和去除的顺序完全一致没有带索引的方法&#xff0c;所以不能使用普通的for循环进行遍历 使用增强for循环或者迭代器进行遍历由于是Set集合&#xf…

PC企业微信4.0 HOOK逆向

最新功能 企业微信已更新到4.0.X版本 &#xff0c;支持控制台的朋友圈、群发等操作。 功能列表: 企业微信接口文档 个人微信已更新至3.7.6.44 个微接口 ***********************分割线***************************** 请求命令码 2000 获取自己的信息 2001 获取指定好友的信息 2…

Reeds-Shepp曲线基础运动公式推导过程

本文是对之前文章“Reeds-Shepp曲线学习笔记及相关思考【点击可跳转】”的补充&#xff0c;因小伙伴的提问&#xff0c;本文补充介绍上述文章第三部分中基础运动公式的推导过程。 本文以上面的第一个公式为例进行介绍&#xff0c;即Reeds-Shepp曲线基础运动中的向前左转运动&am…