随笔分类 -  消息队列

1
摘要:KAFKA推送消息用到了sendfile,落盘技术用到了mmap,DMA贯穿其中。 DMA(Direct Memory Access) 直接存储器访问,DMA技术就是我们在主板上放⼀块独立的芯片。在进行内存和I/O设备的数据传输的时候,我们不再通过CPU来控制数据传输,而直接通过 DMA控制器(DM 阅读全文
posted @ 2020-09-08 10:50 是谁扭曲了时空 阅读(1450) 评论(1) 推荐(0) 编辑
摘要:推模式 (服务端主动推送至消费者) 消费者的处理消息的能力很弱,而消息中间件不断地向消费者Push消息,造成消息堆积,消费者的缓冲区可能会溢出 拉模式 (消费者主动拉去服务端消息) 增加消息的延迟,取决于轮询间隔 RabbitMQ(推模式) RabbitMQ实现了AMQP协议,AMQP协议定义了消息 阅读全文
posted @ 2020-07-07 15:24 是谁扭曲了时空 阅读(552) 评论(0) 推荐(0) 编辑
摘要:RabbitMQ可靠性 我们通过前文知道,RabbitMQ的队列分为master queue和mirror queue,mirror queue 在master queue宕机之后,会被提升为master queue,如下图所示。 队列A的consumer在消费的时候,机器宕机,此时客户端和服务端分 阅读全文
posted @ 2020-07-07 15:12 是谁扭曲了时空 阅读(208) 评论(0) 推荐(0) 编辑
摘要:RabbitMQ架构 RabbitMQ是一个分布式系统,这里面有几个抽象概念。 broker:每个节点运行的服务程序,功能为维护该节点的队列的增删以及转发队列操作请求。 master queue:每个队列都分为一个主队列和若干个镜像队列。 mirror queue:镜像队列,作为master que 阅读全文
posted @ 2020-07-07 15:09 是谁扭曲了时空 阅读(190) 评论(0) 推荐(0) 编辑
摘要:为什么需要消息队列 周末无聊刷着手机,某宝网APP突然蹦出来一条消息“为了回馈老客户,女朋友买一送一,活动仅限今天!”。买一送一还有这种好事,那我可不能错过!忍不住立马点了去。于是选了两个最新款,下单、支付一气呵成!满足的躺在床上,想着马上有女朋友了,竟然幸福的失眠了…… 第二天正常上着班,突然接到 阅读全文
posted @ 2020-07-07 14:32 是谁扭曲了时空 阅读(216) 评论(0) 推荐(0) 编辑
摘要:Kafka 的核心架构原理。 ##Kafka 分布式存储架构 那么现在问题来了,如果每天产生几十 TB 的数据,难道都写一台机器的磁盘上吗?这明显是不靠谱的啊! 所以说,这里就得考虑数据的分布式存储了,我们结合 Kafka 的具体情况来说说。 在 Kafka 里面,有一个核心的概念叫做“Topic” 阅读全文
posted @ 2020-07-01 17:13 是谁扭曲了时空 阅读(706) 评论(0) 推荐(0) 编辑
摘要:Kafka是高吞吐低延迟的高并发、高性能的消息中间件,在大数据领域有极为广泛的运用。配置良好的Kafka集群甚至可以做到每秒几十万、上百万的超高并发写入。 那么Kafka到底是如何做到这么高的吞吐量和性能的呢?这篇文章我们来一点一点说一下。 1、页缓存技术 + 磁盘顺序写 首先Kafka每次接收到数 阅读全文
posted @ 2020-07-01 17:01 是谁扭曲了时空 阅读(1016) 评论(0) 推荐(0) 编辑
摘要:前言 本文所写的,偏重于架构师的内容,所以阅读的小伙伴,要有综合的一些能力,否则,你可能会被其中的计算给弄晕,不过既然,阅读我的文章嘛,都是从基础开始写起,所以还是很好读的。 本文要讨论的话题是,当我搭建一个kafka集群的时候,我们需要考虑的问题。 不能张口就来,我需要什么什么配置的机器之类的,那 阅读全文
posted @ 2020-07-01 14:11 是谁扭曲了时空 阅读(2143) 评论(0) 推荐(0) 编辑
摘要:基础概念 kafka基础构成 producer 消息生产者,发布消息到kafka集群的终端或服务。 broker kafaka集群中包含的服务器 topic 每条发布到kafka集群的消息属于的类别,即kafka是面向topic的。 partition partition是物理上的概念,每个topi 阅读全文
posted @ 2020-07-01 14:04 是谁扭曲了时空 阅读(375) 评论(0) 推荐(0) 编辑
摘要:简介 MetaQ是一款高性能的消息中间件,经过几年的发展,已经非常成熟稳定,历经多年双11的零点峰值压测,表现堪称完美。 MetaQ当前最新最稳定的稳本是3.x系统,MetaQ 3.x重新设计和实现,比之前的版本更优秀。虽然MetaQ借鉴了linkedin 的消息中间件kafak思想,但已经是青出于 阅读全文
posted @ 2020-07-01 13:58 是谁扭曲了时空 阅读(233) 评论(0) 推荐(0) 编辑
摘要:场景一:物联网系统经常会遇到向终端下发命令,如果命令一段时间没有应答,就需要设置成超时。 场景二:订单下单之后30分钟后,如果用户没有付钱,则系统自动取消订单。 上述类似的需求是我们经常会遇见的问题。最常用的方法是定期轮训数据库,设置状态。在数据量小的时候并没有什么大的问题,但是数据量一大轮训数据库 阅读全文
posted @ 2019-07-11 15:02 是谁扭曲了时空 阅读(400) 评论(0) 推荐(0) 编辑
摘要:分布式消息中间件 RabbitMQ是用Erlang语言编写的分布式消息中间件,常常用在大型网站中作为消息队列来使用,主要目的是各个子系统之间的解耦和异步处理。消息中间件的基本模型是典型的生产者-消费者模型,生产者发送消息到消息队列,消费者监听消息队列,收到消息后消费处理。 在使用RabbitMQ做消 阅读全文
posted @ 2019-07-10 16:44 是谁扭曲了时空 阅读(8521) 评论(0) 推荐(0) 编辑
摘要:使用流程 发布者(推送消息的一端): 创建一个tcp长连接connection,连接rabbitmq的监听端口5672; 在TCP长连接下创建一个信道channel,信道可以理解为connection的一个分支; 通过信道向rabbitmq声明一个交换机exchange,设置交换机的类型,名称,是否 阅读全文
posted @ 2019-06-06 23:09 是谁扭曲了时空 阅读(441) 评论(0) 推荐(0) 编辑
摘要:Broker:它提供一种传输服务,它的角色就是维护一条从生产者到消费者的路线,保证数据能按照指定的方式进行传输, Exchange:消息交换机,它指定消息按什么规则,路由到哪个队列。 Queue:消息的载体,每个消息都会被投到一个或多个队列。 Binding:绑定,它的作用就是把exchange和q 阅读全文
posted @ 2019-06-05 19:59 是谁扭曲了时空 阅读(3612) 评论(0) 推荐(0) 编辑
摘要:安装 brew install rabbitmq 目录 cd /usr/local/Cellar/rabbitmq/3.7.4/sbin 插件 sudo ./rabbitmq-plugins enable rabbitmq_management 启动 ./rabbitmq-server 管理界面 h 阅读全文
posted @ 2019-06-03 11:26 是谁扭曲了时空 阅读(331) 评论(0) 推荐(0) 编辑
摘要:RocketMQ为4.3.0版本(我这种写法4.2.0不行) 如果你之前用的其他版本,需要去修改下系统的环境变量 maven工程用到的jar包 <dependencies> <!-- RocketMQ --> <dependency> <groupId>org.apache.rocketmq</gr 阅读全文
posted @ 2019-04-03 11:15 是谁扭曲了时空 阅读(922) 评论(0) 推荐(0) 编辑
摘要:添加rabbitmq的依赖 在配置文件中添加必要的配置信息 好了,基本的配置就已经配置完毕了 rabbitmq有六种模式 我们逐个来看springboot是怎么实现的呢 1.hello world P代表生产者,C代表消费者,红色代码消息队列。P将消息发送到消息队列,C对消息进行处理。 我们先创建一 阅读全文
posted @ 2019-04-03 10:44 是谁扭曲了时空 阅读(1450) 评论(0) 推荐(0) 编辑
摘要:在RocketMQ4.3.0版本后,开放了事务消息这一特性,对于分布式事务而言,最常说的还是二阶段提交协议,那么RocketMQ的事务消息又是怎么一回事呢,这里主要带着以下几个问题来探究一下RocketMQ的事务消息: 事务消息是如何实现的 我们有哪些手段来监控事务消息的状态 事务消息的异常恢复机制 阅读全文
posted @ 2019-04-02 16:41 是谁扭曲了时空 阅读(1413) 评论(1) 推荐(0) 编辑
摘要:目录 一、概述 什么是消息中间件? 二、消息队列的使用场景 为什么使用消息队列? 消息队列有什么优缺点? 三、目前流行的消息队列优缺点对比 四、总结 一、概述 什么是消息中间件? 消息队列中间件(简称消息中间件)是指利用高效可靠的消息传递机制进行与平台无关的数据交流,并基于数据通信来进行分布式系统的 阅读全文
posted @ 2019-04-02 14:42 是谁扭曲了时空 阅读(231) 评论(0) 推荐(0) 编辑
摘要:一、消息队列概述消息队列中间件是分布式系统中重要的组件,主要解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构。目前使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ 二、消息队列应用场景以下介绍消息队列在 阅读全文
posted @ 2019-04-02 10:23 是谁扭曲了时空 阅读(182) 评论(0) 推荐(0) 编辑

1