首页 > 系统相关 >Centos下Rabbitmq安装

Centos下Rabbitmq安装

时间:2024-08-07 10:56:32浏览次数:17  
标签:Centos 队列 rabbitmq Rabbitmq Broker MQ 消息 erlang 安装

提纲
1、rabbitmq简介
2、下载安装erlang/otp
3、下载安装rabbitmq



1 rabbitmq简介

MQ全称为Message Queue,即消息队列。它也是一个队列,遵循FIFO原则 。
RabbitMQ是由erlang语言开发,基于AMQP(Advanced Message Queue Protocol高级消息队列协议)协议实现的消息队列,它是一种应用程序之间的通信方法,消息队列在分布式系统开发中应用非常广泛。
官方地址:http://www.rabbitmq.com/

1.1 RabbitMQ的使用场景

开发中消息队列通常有如下应用场景: 消峰,解耦,提速,大数据处理
消除峰值:用于高并发场景消除峰值,让并发请求在mq中进行排队
大数据处理:由于数据量太大,程序一时处理不过来,可以通过把数据放入MQ,多开几个消费者去处理消息,比如:日志收集等
服务异步/解耦 :服务之间通过RPC进行通信的方式是同步方式,服务消费方需要等到服务提供方相应结果后才可以继续执行,使用MQ之后的服务通信是异步的,服务之间没有直接的调用关系,而是通过队列进行服务通信, 应用程序解耦合 MQ相当于一个中介,生产方通过MQ与消费方交互,它将应用程序进行解耦合。
排序保证 FIFO :遵循队列先进先出的特点,可以保证数据按顺序消费

除此之外使用MQ还可以达到:提高系统响应速度,提高系统稳定性的目的。 将不需要同步处理的并且耗时长的操作由消息队列通知消息接收方进行异步处理。 提高了应用程序的响应时间。另外如果系统挂了也没关系,数据放到消息队列.后续可以继续消费

但是需要注意的是:对数据的一致性要求较高的业务场景不适合使用MQ,因为MQ具有一定的数据延迟

1.2 AMQP协议

AMQP是一套公开的消息队列协议,最早在2003年被提出,它旨在从协议层定义消息通信数据的标准格式,为的就是解决MQ市场上协议不统一的问题,RabbitMQ就是遵循AMQP标准协议开发的MQ服务。 官方:http://www.amqp.org

1.3 JMS是什么 ?

JMS是Java消息服务,是java提供的一套消息服务API标准,其目的是为所有的java应用程序提供统一的消息通信的标准,类似java的 jdbc,只要遵循jms标准的应用程序之间都可以进行消息通信。它和AMQP有什么 不同,jms是java语言专属的消 息服务标准,它是在api层定义标准,并且只能用于java应用;而AMQP是在协议层定义的标准,是跨语言的 。

1.4 RabbitMQ中核心概念

Broker:消息队列服务进程,此进程包括两个部分:Exchange和Queue。
Exchange:消息队列交换机,按一定的规则将消息路由转发到某个队列,对消息进行过虑。exchange有下面四种(先了解:fanout,direct,topics,header)
Queue:消息队列,存储消息的队列,消息到达队列并转发给指定的消费方。
Producer:消息生产者,即生产方客户端,生产方客户端将消息发送到MQ。
Consumer:消息消费者,即消费方客户端,接收MQ转发的消息。

1.5 RabbitMQ的工作流程

消息发布接收流程:

发送消息
1、生产者和Broker建立TCP连接。
2、生产者和Broker建立通道。
3、生产者通过通道消息发送给Broker,由Exchange将消息进行转发。
4、Exchange将消息转发到指定的Queue(队列)

消息接收消息
1、消费者和Broker建立TCP连接
2、消费者和Broker建立通道
3、消费者监听指定的Queue(队列)
4、当有消息到达Queue时Broker默认将消息推送给消费者。
5、消费者接收到消息。



## 2 下载安装erlang/otp

## 3 下载安装rabbitmq

参考资料 1、https://blog.csdn.net/u014494148/article/details/136557125 2、https://www.rabbitmq.com/docs/install-generic-unix,官方安装教程 3、https://www.rabbitmq.com/docs/which-erlang,rabbitmq与erlang/otp的兼容矩阵 4、https://github.com/rabbitmq/erlang-rpm/releases,zero-dependency Erlang RPM 零依赖的erlang rpm包下载地址

标签:Centos,队列,rabbitmq,Rabbitmq,Broker,MQ,消息,erlang,安装
From: https://www.cnblogs.com/zhangzl419/p/18346615

相关文章

  • windows环境下jdk安装手册
    JDK是JAVA语言的软件开发工具包,为JAVA程序开发提供了编译和运行环境。本手册为Windows环境下JDK的下载安装步骤以及环境变量的设置。 下载:网址:https://www.oracle.com/  依次点击Products-java-downloadjava  选择想要下载的版本  安装:下载完成双击安装 ......
  • Windows环境下Jenkins安装手册
    Jenkins是一款自动化服务器,支持持续集成和持续交付。本手册提供Windows环境下Jenkins的安装和使用步骤。 下载:网址:https://www.jenkins.io/点击下载按钮,选择合适的版本下载     安装:双击安装包开始安装,依次点击下一步,更改Jenkins端口号避免占用,8090  选......
  • Ant安装
    1、进入官网:https://ant.apache.org/2、进入https://ant.apache.org/bindownload.cgi3、点击下载即可,如果要历史版本点击here4、配置环境变量进入环境变量,点击path进入后,新建环境变量 添加:D:\apache-ant-1.10.14\bin完成配置  5、验证在命令框中输入:ant-versi......
  • Linux杀毒软件clamav1.3.1离线安装及杀毒
    Linux杀毒软件clamav1.3.1离线安装及杀毒wgethttps://www.clamav.net/downloads/production/clamav-1.3.1.linux.x86_64.rpmrpm-ivh--prefix=/usr/local/clamavclamav-1.3.1.linux.x86_64.rpmgroupaddclamavuseradd-gclamavclamavmkdir-p/usr/local/clamav/logsmkdir-......
  • windows操作系统通过nvm安装pm2,并解决不是内部或外部命令的解决方案
    在Windows环境中安装nvm(NodeVersionManager,Node版本管理器)的步骤如下:一、下载nvm访问nvm的GitHub发布页面:前往nvm-windows的GitHub发布页面下载最新版本的nvm安装包。https://github.com/coreybutler/nvm-windows/releases下载nvm安装包:在发布页面中找到适合您系统的安装包,通常......
  • Windows10 安装编译后的 pysqlcipher3-1.2.1 基于 Python 3.8.10
    Windows10安装编译后的pysqlcipher3-1.2.1基于Python3.8.10本文主要是将直接安装编译后的文件,不一定的成功,但是可以尝试使用,若无法直接安装,请参考编译过程,自行编译安装,编译过程见这里安装pysqlcipher3这里用32位举例因为64位安装完全相同,只需要把对应的位数换成64......
  • MySQL安装
    目录前言MySQL5.7的安裝一、在线安装1.下载yumRepository2.安装yumRepository3.安装mysql5.7的服务4.开机自启动5.启动mysql6.查看状态7.获取临时密码8.登录mysql9.关闭密码复杂验证10.设置密码11.修改权限二、离线安装1、卸载已有的MySQL文件2、安装mysql......
  • [Magisk模块] 安装安卓证书的简便方法
    引言由于reqable客户端提供的安装证书模块未能使抓包正常工作,作者放弃使用reqable提供的模块并选择了另一优秀的Magisk模块MoveCertificates项目地址https://github.com/ys1231/MoveCertificate使用方法由于文档的介绍简单明了,这里只进行简要概括。下载模块刷入模......
  • nuget离线安装
      nuget离线安装本地已经下载好的nuget包路径在:C:\Users\niunan.nuget\packagesVs中工具-->选项-->nuget包管理器-->程序包源,新建一个源,目录指向上面的就行了,这样就可以离线搜索索了,可以直接把上面的packages目录打包到其他电脑上应该也可行。。。或者离线状态下看本地的......
  • 【rz & rb & rz】Centos/Linux rz、rb、rz命令详细介绍
    【rz&rb&rz】Centos/Linuxrz、rb、rz命令详细介绍简介基础语法选项介绍基本用法安全事项环境变量注意事项简介        系统版本:Centos7.6        rz、rb、rz命令属于lrzsz程序的内容,是使用纠错协议通过拨号串行端口从在PC-DOS、CP/M、Unix和......