草庐IT

RabbitMQ

全部标签

使用rabbitmq进行支付之后的消息通知

订单服务完成支付后将支付结果发给每一个与订单服务对接的微服务,订单服务将消息发给交换机,由交换机广播消息,每个订阅消息的微服务都可以接收到支付结果.微服务收到支付结果根据订单的类型去更新自己的业务数据。相关技术方案使用消息队列进行异步通知需要保证消息的可靠性,即生产端将消息成功通知到消费端。消息从生产端发送到消费端经历了如下过程:1、消息发送到交换机2、消息由交换机发送到队列3、消息者收到消息进行处理保证消息的可靠性需要保证以上过程的可靠性,本项目使用RabbitMQ可以通过如下方面保证消息的可靠性。1、生产者确认机制发送消息前使用数据库事务将消息保证到数据库表中成功发送到交换机将消息从数据库

Windows 安装 RabbitMq 和 Erlang

1.安装Erlang音乐RabbitMq是基于Erlang开发的,所以先要安装这个环境下载地址:32位64位其他版本自己找官网下载完之后无脑安装直接一直下一步2.配置Erlang环境变量2.1新建ERLANG_HOME把自己的安装的根目录填进去比如:C:\ProgramFiles\ErlangOTP2.2在Path中新建%ERLANG_HOME%\bin2.3打开CMD输入erl出现版本号即可3.安装RabbitMq3.1下载地址:RabbitMq如果下载其他版本需要看下Erlang和RabbitMq两者的版本关系对应关系无脑安装直接下一步,最后一步先不要启动RabbitMq3.2CMD进入到

[中间件] RabbitMQ消息队列:探索应用场景

前言:现代系统架构中,中间件是不可或缺的一部分,它们允许不同部分的系统进行通信并协同工作。其中一个常见的中间件是消息队列,它可以让不同的应用程序之间进行异步通信。RabbitMQ是一种广泛应用于各种类型的应用程序和系统中的消息队列中间件。文章目录任务分配和并行处理解耦应用程序日志处理总结本文将探究RabbitMQ的应用场景,并提供一些示例代码,帮助您了解如何在实际项目中使用RabbitMQ来提高系统的可靠性和性能。注意:请准备好您的代码编辑器,本文将深入了解RabbitMQ!任务分配和并行处理RabbitMQ可以通过将消息发送到队列中,帮助我们实现任务分配和并行处理。下面是一个基本的示例代码:

docker部署rabbitmq

docker部署rabbitmq镜像搜索dockersearchrabbitmq下载镜像dockerpullrabbitmq启动dockerrun-d--namerabbitmq--restartalways\-p15672:15672\-p5672:5672\rabbitmq后台插件安装dockerexec-itrabbitmq/bin/bashrabbitmq-pluginsenablerabbitmq_management重置队列dockerexec-itrabbitmq/bin/shrabbitmqctlstop_apprabbitmqctlresetrabbitmqctlstart_

RabbitMQ(一)

1.初识MQ1.1.同步和异步通讯微服务间通讯有同步和异步两种方式:同步通讯:就像打电话,需要实时响应。异步通讯:就像发邮件,不需要马上回复。两种方式各有优劣,打电话可以立即得到响应,但是你却不能跟多个人同时通话。发送邮件可以同时与多个人收发邮件,但是往往响应会有延迟。1.同步通讯我们之前学习的Feign调用就属于同步方式,虽然调用可以实时得到结果,但存在下面的问题:优缺点同步调用的优点:时效性较强,可以立即得到结果同步调用的问题:耦合度高性能和吞吐能力下降有额外的资源消耗有级联失败问题2.异步通讯异步调用则可以避免上述问题:我们以购买商品为例,用户支付后需要调用订单服务完成订单状态修改,调用

【Windows安装RabbitMQ详细教程】

Windows安装RabbitMQ详细教程前言一、RabbitMQ是什么?二、安装步骤1.安装准备工作2.开始安装3.结束安装总结前言下面我将分享下RabbitMQ最新版本在Windows上的详细安装教程。笔者在这里使用的系统环境如下:windows系统:Windows11专业版21H2Erlang:24.1.7RabbitMQ:3.9.11一、RabbitMQ是什么?RabbitMQ是一个由Erlang语言开发的AMQP的开源实现。AMQP:AdvancedMessageQueue,高级消息队列协议。它是应用层协议的一个开放标准,为面向消息的中间件设计,基于此协议的客户端与消息中间件可传递消

RabbitMQ异步与重试机制

    先来回顾一下前文,我们先基于Java原生语言,利用多线程和锁实现了串行/并行任务(Java串行/并行任务实现);之后利用SpringBoot为我们封装好的功能,尝试用SpringBoot自带的API实现了异步调用,并在此基础上,统一管理了多线程的事务(SpringBoot异步任务及并行事务实现)。    对于多线程的使用,我们已经有了一个全面的认知,系统响应能力也确实有了不小的提升。但随着系统负载持续增大,如果每个用户请求进来都为其分配线程,线程池打满后用户也只能一直等待;计算量过大、线程数过多时,CPU也会承受不了压力。线程是针对单进程的概念,天生不支持分布式,如果某个下游服务需要处

RabbitMQ相关面试题

用到了哪些MQ?什么使用场景?MQ的组成部分?MQ宕机了怎么办?如何进行持久化的?MQ的选型?Kafka:高吞吐量、低延迟的分布式消息队列,主要用于大规模数据处理和流式处理RocketMQ:RocketMQ是阿里巴巴开源的分布式消息队列,具有高吞吐量、低延迟、高可靠性等特点RabbitMQ:易于使用的消息队列,支持多种消息传递模式,如点对点和发布-订阅。它具有较好的可靠性和稳定性,支持消息持久化,保证消息不会丢失为什么选择RabbitMQ?使用场景是多个业务服务产生的日志要发送给日志服务进行处理,结合业务背景跟技术选型当初选择了RabbitMQ,比较容易上手,并且SpringBoot项目集成了

【保姆级教程—全网最快】一拿出手就羡煞旁人的RabbitMQ安装文档

系列文章目录准备篇RabbitMQ安装文档第一章RabbitMQ快速入门篇第二章RabbitMQ的Web管理界面详解第三章RabbitMQ进阶篇之死信队列第四章RabbitMQ进阶篇之通过插件实现延迟队列文章目录系列文章目录前言一、下载所需文件二、将安装包上传至服务器三、安装erlang语言环境四、RabbitMQ安装五、安装RabbitMq的web界面六、配置web界面的用户名密码七、安装完成前言恭喜所有看到本篇文章的小伙伴,成功解锁了羡煞旁人的RabbitMQ安装文档🎁通过本文,你将以全网最快的速度部署属于你自己的RabbitMQ😁一、下载所需文件从网盘中下载小名准备好的erlang、ra

RabbitMQ原理(一):基础知识

文章目录1.初识MQ1.1.同步调用1.2.异步调用1.3.技术选型2.RabbitMQ2.1.安装2.2.收发消息2.2.1.交换机2.2.2.队列2.2.3.绑定关系2.2.4.发送消息2.3.数据隔离2.3.1.用户管理2.3.2.virtualhost微服务一旦拆分,必然涉及到服务之间的相互调用,目前我们服务之间调用采用的都是基于OpenFeign的调用。这种调用中,调用者发起请求后需要等待服务提供者执行业务返回结果后,才能继续执行后面的业务。也就是说调用者在调用过程中处于阻塞状态,因此我们成这种调用方式为同步调用,也可以叫同步通讯。但在很多场景下,