RabbitMQ
文章平均质量分 88
关于RabbitMQ的使用
未来.....
时间不在于你拥有多少,而在于你怎样使用。
展开
-
RabbitMQ的幂等性和集群负载均衡
RabbitMQ的幂等性和集群负载均衡1、RabbitMQ的幂等性 假设你买了一样东西,已经付款了,但是返回结果的时候,你的网络异常了,此时钱已经扣了,用户再次点击支付,就会进行二次扣款,返回结果成功了,但是这样合理嘛?肯定不行的,因为你支付了两次,这样不合理,因为你只需要支付1次就可以。 以前我们只需要将数据操作放到事务中,发生错误立即回滚就行,但是再次相应还是可能会出现网络终端或者异常等情况,所以现在就需要保证用户点击一次或者多次所产生的结果一样。那么此时就可以去这样理解幂等性:对于一个原创 2021-04-25 20:33:53 · 307 阅读 · 1 评论 -
RabbitMQ----死信队列和延迟队列
RabbitMQ----死信队列和延迟队列 先想一想,如果你有一个快递,一直尝试给你派送,但是一直联系不上你,签收不了,那么此时这个快递该如何处理?是再次尝试派送,还是处理掉? 现在引入一个名词,死信,顾名思义:就是不能被消费的信息,字面意思可以这样理解,生产者(发送方)将信息传递到交换机,交换机将信息发送到队列中,消费者从队列中取出信息并消费掉,但是由于各种原因,导致队列中的某些信息不能被消费,这样的消息如果没有后续的处理,就变成了死信,有了死信信息,就有了死信的队列,也就有了死信交换机(Dead原创 2021-04-23 22:33:47 · 248 阅读 · 0 评论 -
RabbitMQ----消费端限流、TTL和使用代码生成交换机队列
RabbitMQ----消费端限流和TTL先想一想什么是消费端限流? 假设一个场景,首先我们rabbitmq服务器上面有上万条没有处理的消息,我们随便打开一个消费者客户端,会出现下面情况:巨量消息瞬间全部推送过来,但是我们当个客户端没有办法进行处理这么多的数据,可能会造成服务器宕机。上面这个假设可能不好理解,看看下面这个例子。 说一家餐馆,你去吃饭,你本来只能吃10碗,老板做了100碗,你本来是吃完一碗叫老板再给你端一碗,但是老板一下子把所有的都给你,说让你吃完,这时候吃的掉吗?此时就引入了一个原创 2021-04-22 19:12:28 · 157 阅读 · 0 评论 -
RabbitMQ安装和简单使用
17/100weixin_43451430newRabbitMQ安装和配置使用!!!警告:安装前请确认MySQL是否已经安装【点这里】安装。提供一下安装RabbitMQ所需要的组件。【csdn下载】百度云链接:https://pan.baidu.com/s/1WhsJe1dUGsKO1aVRDc9w5g提取码:oh881. 在线安装依赖环境:yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-deve原创 2021-04-21 11:03:31 · 322 阅读 · 1 评论 -
RabbitMQ----消息可靠性传递
RabbitMQ的高级特性 在开始之前,先想想几个问题,我们采用了生产者(channel)---->交换机------>队列中,那么如果其中生产者在向交换机发送信息是能一定发送成功吗?,该如何确认信息的状态,或者说交换机在向队列发送信息的时候发送失败,那么该如何解决。 举个例子:你购买了一件商品,商品要通过快递到你手里,就可以理解成你就是队列, 商品要到快递站,此时你的快递就有可能出现丢失的情况(这里可以理解成生产者(channel)---->交换机),快递丢了,是不是就要告诉一下原创 2021-04-22 13:36:11 · 220 阅读 · 0 评论 -
RabbitMQ的五种常见模式
RabbitMQ的五种常见模式在练习RabbitMQ之前,请确认自己的RabbitMQ已经安装并开启。1、简单模式从图上可以看到只有三个角色: p 【product】: 生产者 发生消息的 红色[queue]: 队列。 存储消息的 C [consumer]: 消费者 消费消息创建一个maven项目,创建一个消费者和一个生产者。生产者代码:public class Product { public static void main(String[] args)原创 2021-04-21 10:22:43 · 490 阅读 · 1 评论 -
RabbitMQ---消息中间件
RabbitMQ—消息中间件1、什么是MQ?MQ全称 Message Queue(消息队列),是在消息的传输过程中保存消息的容器。多用于分布式系统之间进行通信。是一个开源的消息代理和队列服务器,用来通过普通协议在完全不同的应用之间共享数据。使用 Erlang 语音编写,基于 AMQP 协议。2、MQ的优缺点优点:应用解耦:提高系统容错性和可维护性。异步提速:提升用户体验和系统吞吐量。削峰填谷:提高系统稳定性。缺点:系统可用性降低。系统引用的外部依赖越多,系统稳定性越差,一旦原创 2021-04-20 22:14:17 · 154 阅读 · 0 评论