自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

weixiaohuai的博客

任何质变都来自于量变的积累。

  • 博客(8)
  • 资源 (1)
  • 收藏
  • 关注

原创 RabbitMQ消息可靠性传输示例

一、简介生产端的可靠性投递:保障消息的成功发出; 保障MQ节点的成功接收; 发送端收到MQ节点(Broker) 确认应答; 完善的消息补偿机制;在实际项目中某些场景下,必须保证消息不会出现丢失情况,这时候就需要我们对消息可靠性传输解决方法有所认识,才能在各种特殊情况下不会出现消息丢失、消息多发现象等。生产者可靠性传输有两种方案:消息落库,对消息状态进行打标 消息的延迟投递,做...

2019-07-28 21:42:20 517 1

原创 RabbitMQ死信队列应用场景之模拟未支付订单自动取消

一、简介在前面的博客中已经介绍了死信队列的使用方法,具体可以参考https://blog.csdn.net/Weixiaohuai/article/details/94760975这篇文章。 场景介绍:我们都经常在淘宝上买东西,当我们提交订单后,如果某个时间段之内我们没有支付,淘宝肯定不会帮我们一直保留那个订单,如果超过半个小时我们未支付的话,淘宝会自动帮我们取消订单。在没有用R...

2019-07-25 16:18:01 3077 7

原创 RabbitMQ消息幂等性之全局唯一ID

一、简介消息幂等性,其实就是保证同一个消息不被消费者重复消费两次。当消费者消费完消息之后,通常会发送一个ack应答确认信息给生产者,但是这中间有可能因为网络中断等原因,导致生产者未能收到确认消息,由此这条消息将会被 重复发送给其他消费者进行消费,实际上这条消息已经被消费过了,这就是重复消费的问题。如何避免重复消费的问题?消费者端实现幂等性,意味着我们的消息永远不会消费多次,即使我们收到...

2019-07-21 20:36:20 6014 4

原创 RabbitMQ提升消息传输可靠性方法总结

一、简介在RabbitMQ消息传输过程中,由于网络、服务器本身等问题,有时候会发生消息丢失的现象,在生产环境中,我们应该尽可能保证消息不会丢失,当然不是说百分百保证。下面列举一些发生消息丢失的场景:【a】如果在声明交换机、队列、发送消息的时候没有指定消息持久化的话,那么在RabbitMQ服务器重启的情况下,所有未持久化的交换机、队列、消息都将会丢失; 【b】如果生产者发送完消息之后,如果...

2019-07-20 22:35:43 573

原创 RabbitMQ消费者流量控制策略总结

一、简介在实际项目中使用RabbitMQ的时候,由于消费者(接收消息的一端)自身处理消息的效率并不高,如果说这时候生产者还是不断地在生产消息,一直推送消息到消费者,那么很容易引起消费者的宕机。rabbitmq提供了一个限流机制,用于限制一次性推送到消费者客户端的消息数量,让消费者都处理完了消息之后,生产者再推送新的消息过来。二、限流的原因出于以下两个方面,所以需要对消费者进行一些限流策...

2019-07-10 21:20:39 3182

原创 RabbitMQ消息确认机制之Confirm模式总结

一、简介在RabbitMQ中,消息确认主要有生产者发送确认和消费者接收确认:生产者发送确认:指生产者发送消息后到RabbitMQ服务器,如果RabbitMQ服务器收到消息,则会给我们生产者一个应答,用于告诉生产者该条消息已经成功到达RabbitMQ服务器中。消费者接收确认:用于确认消费者是否成功消费了该条消息。消息确认的实现方式主要有两种,一种是通过事务的方式(channel.tx...

2019-07-07 11:25:31 6197 6

原创 RabbitMQ消息持久化总结

一、简介在RabbitMQ中,如果遇到RabbitMQ服务停止或者挂掉,那么我们的消息将会出现丢失的情况,为了在RabbitMQ服务重启的情况下,不丢失消息,我们可以将Exchange(交换机)、Queue(队列)与Message(消息)都设置为可持久化的(durable)。这样的话,能够保证绝大部分的消息不会被丢失,但是还有有一些小概率会发生消息丢失的情况。下面通过一个简单的示例总结在Rab...

2019-07-06 09:17:06 5086

原创 RabbitMQ死信队列和备份交换器总结

一、简介死信交换机(Dead-Letter-Exchange):当消息在一个队列中由于过期、被拒绝等原因变成死信 (dead message) 之后,它能被重新被发送到另一个交换器中,这个交换器就是死信交换机,绑定死信交换机的队列就称之为死信队列。判断一个消息是否是死信消息(Dead Message)的依据: a. 消息被拒绝(Basic.Reject或Basic.Nack)并且设置 ...

2019-07-05 21:28:59 828

zipkin-server jar.zip

spring cloud zipkin服务链路跟踪server相关jar包,下载完成之后使用java -jar zipkin-server-2.12.9-exec.jar方式运行,就能启动zipkin-server,不建议自己搭建zipkin-server

2020-08-29

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除