
消息中间件
K'illCode
记录自己的学习历程,大部分来自转载,如有侵权联系删除.......
展开
-
RabbitMq七种工作模式,结合简单的java实例使用
作者:小小卡尔 来源:blog.youkuaiyun.com/weixin_44185736/article/details/106574637 一、Maven依赖添加 <!--rabbitmq相关依赖--> <dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-client</artifactId> <version&g...原创 2020-09-21 14:09:13 · 359 阅读 · 0 评论 -
RabbitMQ 延迟队列,消息延迟推送的实现
目录 应用场景 消息延迟推送的实现 测试结果 应用场景 目前常见的应用软件都有消息的延迟推送的影子,应用也极为广泛,例如: 淘宝七天自动确认收货。在我们签收商品后,物流系统会在七天后延时发送一个消息给支付系统,通知支付系统将款打给商家,这个过程持续七天,就是使用了消息中间件的延迟推送功能。 12306 购票支付确认页面。我们在选好票点击确定跳转的页面...原创 2020-02-03 20:15:42 · 559 阅读 · 0 评论 -
从头进行RabbitMQ安装、集群搭建、镜像队列配置和代码验证
前言 不知道说什么好,直接开始吧。本来想采用最新版本的,一想到生产和测试必须版本保持一致,不能随便升级,就只好去下载指定版本的rabbitmq的rpm。 RabbitMQ概念 Broker:消息中间件的服务节点,RabbitMQ的一个服务实例,也可以看做是RabbitMQ的一台服务器 Queue 队列:用于存储消息。kafka不一样,它的消息存在在topic逻辑层面,而队列存储的只是to...原创 2020-01-12 19:10:39 · 295 阅读 · 0 评论 -
RabbitMQ最佳实践
在使用消息机制时,我们通常需要考虑以下几个问题: 消息不能丢失 保证消息一定能投递到目的地 保证业务处理和消息发送/消费的一致性 本文以RabbitMQ为例,讨论如何解决以上问题。 消息持久化 如果希望RabbitMQ重启之后消息不丢失,那么需要对以下3种实体均配置持久化: exchange queue message 声明excha...原创 2019-07-16 10:45:04 · 249 阅读 · 1 评论 -
RocketMQ中tag的坑
背景介绍 项目组使用阿里RocketMQ,对同一个消费组设置不同的tag订阅关系,出现消息丢失的问题,本文从rocketmq源码研究消息发布与订阅原理,并分析导致该问题的原因。 官方说明 告诉使用者:同一个消费组,必须保持订阅关系一致 为什么?它没有说!只能从源码找答案 问题复现 启动消费者1,消费组为group1,订阅topicA的消息,tag设置为tag1 ...转载 2019-07-03 18:10:17 · 13644 阅读 · 5 评论 -
RabbitMQ如何保证消息99.99%被发送成功
原文连接:http://atjf.top/9bkrIY 作者:中关村的老男孩 1. 本篇概要 RabbitMQ针对这个问题,提供了以下几个机制来解决: 生产者确认 持久化 手动Ack 本篇博客我们先讲解下生产者确认机制,剩余的机制后续单独写博客进行讲解。 2. 生产者确认 要想保证消息不丢失,首先我们得保证生产者能成功的将消息发送到RabbitMQ服务器。 ...转载 2019-07-03 18:01:22 · 504 阅读 · 0 评论 -
RabbitMQ 和 Kafka 的消息可靠性对比
RabbitMQ和Kafka都提供持久的消息保证。两者都提供至少一次和至多一次的保证,另外,Kafka在某些限定情况下可以提供精确的一次(exactly-once)保证。 让我们首先理解一下上述术语的含义: 至多一次投递:消息绝对不会被重复投递,但是消息可能丢失 至少一次投递:消息绝对不会被丢失,但是有可能重复被消费 精确的一次投递:消息系统的圣杯。所有的消息精确的被投递一次。 “投递”...原创 2019-05-24 13:38:06 · 1325 阅读 · 0 评论 -
RabbitMQ和Kafka到底怎么选?
前言 开源社区有好多优秀的队列中间件,比如RabbitMQ和Kafka,每个队列都貌似有其特性,在进行工程选择时,往往眼花缭乱,不知所措。对于RabbitMQ和Kafka,到底应该选哪个? RabbitMQ架构 RabbitMQ是一个分布式系统,这里面有几个抽象概念。 broker:每个节点运行的服务程序,功能为维护该节点的队列的增删以及转发队列操作请求。 master qu...转载 2019-05-09 10:01:32 · 179 阅读 · 0 评论 -
RabbitMQ和Kafka到底怎么选(二)
前言 前一篇文章《RabbitMQ和Kafka到底怎么选?》,我们在吞吐量方面比较了Kafka和RabbitMQ,知道了Kafka的吞吐量要高于RabbitMQ。本文从可靠性方面继续探讨两个队列的差异。 RabbitMQ可靠性 我们通过前文知道,RabbitMQ的队列分为master queue和mirror queue,mirror queue 在master queue宕机之后,会被提升...原创 2019-05-09 10:00:00 · 186 阅读 · 0 评论 -
消息中间件企业级应用
众所周知,消息中间件是大型分布式系统中不可或缺的重要组件。它使用简单,却解决了不少难题,比如异步处理,系统藕合,流量削锋,分布式事务管理等。实现了一个高性能,高可用,高扩展的系统。 本章通过介绍消息中间件的应用场景,消息中间件的传输模式,ActiveMQ快速入门 三个方面来对消息中间件进行入门介绍。还在等什么,赶快来学习吧! 说明:消息中间件非常强大,值得我们认真去学习和使用。完整代码请异...原创 2019-02-21 18:52:21 · 282 阅读 · 0 评论