超详细RabbitMQ安装和消息模型案例

本文详细介绍了RabbitMQ的安装过程,以及通过Java实现的Simple、Work、Fanout三种消息模型案例,揭示了消息队列在解耦、异步和削峰等方面的优势。
摘要由CSDN通过智能技术生成

什么是mq?

消息队列(Message Queue,简称MQ):是在消息的传输过程中保存消息的容器。用于分布式系统之间进行通信。

什么是RabbitMQ?

AMQP,即 Advanced Message Queuing Protocol(高级消息队列协议),是一个网络协议,是应用层协议的一个开放标准,为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同的开发语言等条件的限制。2006年,AMQP规范发布。类比HTTP。

 为什么要使用RabbitMQ?

1、解耦

传统模式:系统间耦合性太强,如图所示,系统A在代码中直接调用系统B和系统C的代码,如果将来D系统接入,系统A还需要修改代码,过于麻烦。

 中间件模式:将消息写入消息队列,需要消息的系统自己从消息队列中订阅,从而系统A不需要做任何修改。

 2、异步

传统模式: 一些非必要的业务逻辑以同步的方式运行,太耗费时间。

 中间件模式: 将消息写入消息队列,非必要的业务逻辑以异步的方式运行,加快响应速度。

 3、削峰

传统模式:并发量大的时候,所有的请求直接怼到数据库,造成数据库连接异常。

 中间件模式: 系统A慢慢的按照数据库能处理的并发量,从消息队列中慢慢拉取消息。

 安装RabbitMQ:

官网下载地址:Downloading and Installing RabbitMQ — RabbitMQhttp://www.rabbitmq.com/download.html

下载上传:略

1、安装erlang环境:

cd /usr/upload
rpm -ivh esl-erlang-17.3-1.x86_64.rpm --force --nodeps
rpm -ivh esl-erlang_17.3-1~centos~6_amd64.rpm --force --nodeps
rpm -ivh esl-erlang-compat-R14B-1.el6.noarch.rpm --force --nodeps

2、安装rabbitmq:

rpm -ivh rabbitmq-server-3.4.1-1.noarch.rpm

3、启动和关闭: 

service rabbitmq-server start  //启动
s
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值