一、背景 最近再看rabbitmq相关只是,发现只是知道了使用与流程,很多细节不清楚,如延迟队列,rpc等;故以记之。 二、基础概念 我们先来看下整体构造一个结构图,这样会方便们更好地去理解RabbitMQ的基本原理(网上找的图 嘿嘿)。 图一通过上面这张应用相结合的结构图既能够清晰的看清楚整体的send Message到Receive Message的一个大致的流程。当然上面有很多名词都相比还没
转载 2023-12-02 13:31:48
68阅读
安装登陆完以后,进入后台界面: 创建新工程,完成与mq的联动操作: pom: 先写生产者代码: 运行: 再写消费者的代码: 再做点修改: 只接受消息的消息体: 运行: 抽取工具类: 写两个工作线程: 在idea中设置一个类可以多线程运行: 两个都运行起来: 写生产者: 运行: 写新的生产者和消费者, ...
转载 2021-07-13 16:22:00
268阅读
2评论
几种MQ比较kafka rabbitmq rocketmq RabbitMQ几个重要组成部分1.生产者:虚拟主机:交换机:队列:消费者:
原创 2024-04-17 10:30:01
26阅读
RabbitMQ原理与相关操作(一)小编是菜鸟一枚,最近想试试MQ相关的技术,所以自己看了下RabbitMQ官网,试着写下自己的理解与操作的过程。刚开始的第一篇,原理只介绍 生产者、消费者、队列,至于其他的内容,会在后续中陆续补齐。 引入MQ话题 什么时候会用到MQ可能很多人有疑惑:MQ到底是什么?哪些场景下要使用MQ? 前段时间安装了RabbitMQ,现在就记录下自
一、下载软件 https://www.erlang.org/downloads 下载:https://github.com/rabbitmq/rabbitmq-server/releases/ 二、启用控制台 安装好之后,进入cmd:C:\Program Files\RabbitMQ Server\ ...
转载 2021-09-18 16:41:00
232阅读
2评论
在快速开启中,RocketMQ为我们提供了中文的学习文档,https://github.com/apache/rocketmq/tree/master/docs/cn学习RocketMQ需要5个先前条件。推荐使用64位操作系统,建议使用Linux / Unix / Mac;(Windows用户请参见下面的指南) 64位JDK 1.8+; Maven 3.2.x; Git; 适用于Broker服务器
原创 2023-12-20 18:00:16
108阅读
1.背景RabbitMQ是一个由erlang开发的AMQP(AdvanvedMessageQueue)的开源实现。2.应用场景2.1异步处理场景说明:用户注册后,需要发注册邮件和注册短信,传统的做法有两种1.串行的方式;2.并行的方式(1)串行方式:将注册信息写入数据库后,发送注册邮件,再发送注册短信,以上三个任务全部完成后才返回给客户端。这有一个问题是,邮件,短信并不是必须的,它只是一个通知,而
转载 精选 2018-11-18 18:02:09
1982阅读
# 使用Docker部署RabbitMQ ## 什么是Docker? Docker是一种轻量级的容器化技术,它可以帮助开发者更方便地打包、交付和运行应用程序。通过Docker,开发者可以将应用程序及其依赖项打包到一个可移植的容器中,并在任何地方运行。 ## 什么是RabbitMQ? RabbitMQ是一个流行的开源消息代理软件,它实现了高级消息队列协议(AMQP),可以在分布式系统中进行消
原创 2024-03-04 05:19:45
9阅读
135、Rabbit MQ的使用场景有哪些? 1) 抢购活动,削峰填谷,防止系统崩溃。 2) 延迟信息处理,比如10分钟之后给下单未付款的用户发送邮件提醒 3) 解耦系统,对于新增的功能可以单独写模块扩展,比如用户确认评价之后,新增了给用户返回积分的功能,这个时候不用业务代码里添加新的增加积分功能,
转载 2020-04-05 20:30:00
135阅读
2评论
RabbitMQ是一种开源的消息队列软件,它实现了高级消息队列协议(AMQP)标准,可以在分布式系统中进行消息传递。在Android应用程序中,使用RabbitMQ可以实现消息的异步处理,实现不同组件之间的解耦,提高系统的可扩展性和性能。 ### RabbitMQ的基本概念 在RabbitMQ中,有几个重要的概念需要了解: - **Producer**: 负责生产消息并将消息发送到Rabbi
原创 2024-06-16 04:55:15
27阅读
什么是RabbitMQ先来了解什么是AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。RabbitMQ是基于AMQP协议的一种实现,RabbitMQ服务端由Erlang语言编写,用于在分布式系统中提供消息储存和转发。本章将具体介绍一下RabbitMQ的概念已经相关原理架构。RabbitMQ架构图里面
一、安装erlang首先需要安装Rabbit MQ的依赖环境erlang官网下载:https://www.erlang.org/downloads官网下载太慢
# Java消费RabbitMQ ![RabbitMQ Logo]( ## 引言 RabbitMQ是一个开源的消息中间件,用于支持异步消息传递。它实现了高级消息队列协议(AMQP),可在分布式系统中可靠地传递消息。在分布式系统中,不同的服务可能需要通过消息传递来进行通信。RabbitMQ提供了一个可靠的机制,确保消息的准确传递。本文将介绍如何使用Java消费RabbitMQ中的消息。 ##
原创 2024-01-31 09:05:50
26阅读
RabbitMQ是一个开源的消息代理软件,常常被用来实现分布式系统中的异步消息处理。它基于AMQP协议,提供了可靠的消息传递机制,支持多种消息模型,如发布/订阅、工作队列、RPC等。但是,单个RabbitMQ节点存在单点故障的问题,为了提高系统的可靠性和可用性,我们需要采用集群部署方案。下面,我们将介绍如何实现RabbitMQ集群和消息的高可用性和可靠性。RabbitMQ集群搭建RabbitMQ集
在上一篇博客中,我们实现了工作队列,并且我们的工作队列中的一个任务只会发给一个工作者,除非某个工作者未完成任务意外被杀死,会转发给另外的工作者。 在这篇博客中,我们将实现将一个消息发给多个消费者,这种模式称之为广播。本质上来说,就是发布的消息会转发给所有的接收者。交换机(Exchanges)前面的博客中我们都是通过生产者发送消息给队列,接收者从队列中接收消息。 接下来我们将引入Exchanges。
转载 2024-09-26 14:47:44
38阅读
普通Maven项目使用RabbitMQ一、简单模式一个服务者对应一个消费者创建BaseProject父maven项目,在父项目底下创建maven模块producer导入相关依赖<!-- rabbitmq依赖 --> <dependency> <groupId>com.rabbitmq</groupId>
一、MQ的基本概念1、MQ的概述2、MQ的优势应用解耦异步提速削峰填谷3、MQ的劣势系统可用性降低系统复杂度提高一致性问题4、MQ的使用条件5、常见的MQ的产品二、什么是RabbitMQ1、RabbitMQ概念Broker(服务端)Virtual host(虚拟机)Connection(连接)Channel(管道)Exchange(交换机)Queue(队列)Binding()2、AMQP3、JMS
# 使用 Docker 启动 RabbitMQ 的完整指南 Docker 是一种流行的容器化技术,允许开发者以轻量级的方式打包和运行应用程序。RabbitMQ 是一个强大的消息代理,由于其灵活和高效的特性,广泛用于消息队列中。在这篇文章中,我们将介绍如何使用 Docker 启动 RabbitMQ,并展示相关的代码示例。 ## 什么是 RabbitMQ? RabbitMQ 是一个开源的消息代理
原创 2024-10-14 04:42:13
200阅读
# RabbitMQ及其在Java中的配置 RabbitMQ是一个开源的消息中间件,基于AMQP(高级消息队列协议)。它的设计目标是为了帮助开发者更轻松地构建分布式系统,通过异步消息传递实现不同服务之间的解耦与通信。本文将介绍RabbitMQ的基本概念及其在Java中的配置示例。 ## RabbitMQ的基本概念 在开始具体的Java配置之前,让我们先了解一些基本概念: - **Produ
原创 2024-10-19 06:07:26
48阅读
SOA (面向服务的架构)面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和协议联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构件在各种各样的系统中的服务可以以一种统一和通用的方式进行交互。SOA 架构与微服务架构的区别SOA 的主要目的是为了企业各个系统更加容易地融合在一
  • 1
  • 2
  • 3
  • 4
  • 5