一、kafka的定义kafka是一个基于发布/订阅模式的分布式消息队列。二、 消息队列的两种模式 (1)点对点模式(一对一,消费者主动取数据,消息收到后消息清除)(2)发布/订阅模式(一对多,消费者消费数据之后不会清除消息) kafka是属于发布/订阅模式的取模式发布/订阅有两种数据消费模式: Push & Pull 模式()三、kafka的组件
现在从事java开发的同学,不论是在面试过程中还是在日常的工作中,肯定会碰到消息队列的情况,市面上消息队列有很多:kafka、rocketMQ、rabbitMQ、zeroMQ等,从本篇博客起计划分享一些kafka方面的知识。消息队列基础知识所谓消息队列很好理解,把它拆开来看就是消息和队列,消息这里不是一般意义上的消息,这里是广义的,你可以理解为一个个的订单信息、学生信息、一个个的短信等;队列就很好
每个时代,都不会亏待会学习的人大家好,我是 yes。今天我们就来谈一谈消息队列的推拉模式,这也是一个面试热点,例如你在简历里面写了 RocketMQ ,基本上会问你 RocketMQ 采用的是模式还是拉模式啊?是拉模式?不是有 PushConsumer 吗?今天我们就来谈谈推拉模式,并且再来看看 RocketMQ 和 Kafka 是如何做的。推拉模式首先明确一下推拉模式到底是在讨论消息队列的哪一
推拉模式的时候指的是 Comsumer 和 Broker 之间的交互。  模式broker主动消息给消费者,来一条一条优点:来一条一条,实时性较高缺点:消费者的消费能力有限,如果一时间大量的消息推过来 消费者并没有能力一下去消费这么多。不同的消费者消费速率可能不同,导致broker维护不同消费者推送速率较困难.适用于: 消息量不大,消息实时性要求高场景 拉模式
今天我们就来谈一谈消息队列的推拉模式,这也是一个面试热点,例如你在简历里面写了 RocketMQ ,基本上会问你 RocketMQ 采用的是模式还是拉模式啊?是拉模式?不是有 PushConsumer 吗?今天我们就来谈谈推拉模式,并且再来看看 RocketMQ 和 Kafka 是如何做的。推拉模式首先明确一下推拉模式到底是在讨论消息队列的哪一个步骤,一般而言我们在谈论推拉模式的时候指的是 Co
文章目录一、前言二、推拉模式2.1 推拉模式的时候指的是 Comsumer 和 Broker 之间的交互2.2 模式2.2 拉模式三、RocketMQ 中的长轮询四、Kafka 中的长轮询五、小结一、前言今天我们就来谈谈推拉模式,并且再来看看 RocketMQ 和 Kafka 是如何做的。二
原创 2021-07-16 13:37:44
250阅读
定义、功能和详细执行过程的理论解释:MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)“和"Reduce(归约)”,是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。 当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新
# Redis是还是? ## 简介 Redis是一个开源的内存数据库,常用于缓存、消息队列、会话管理等。在实际使用中,根据数据的传输方式,可以将Redis的操作分为“”和“”两种方式。 ****:指的是数据的发布者将数据推送给订阅者,订阅者被动接收数据。 ****:指的是订阅者主动向发布者请求数据,发布者被动返回数据。 那么,Redis是还是呢?接下来我们将通过一些代码示
原创 3月前
18阅读
Kafka 最初考虑的问题是,customer 应该从 brokes 取消息还是 brokers 将消 息推送到 consumer,也就是 pull 还 push。在这方面,Kafka 遵循了一种大部分 消息系统共同的传统的设计:producer 将消息推送到 broker,consumer 从
转载 2020-11-28 15:09:00
159阅读
2评论
to be continue。。。kafka是通过一个提交日志记录的方式来存储消息记录,采用拉模式,而RabbitMQ则采用队列的方式,属于模式。由于kafka是通过提交日志记录的方式,消息的状态在消费端维护,因而当需要多订阅时,完全没必要建立多个partition,所有消费端对应同一个partition。但当kafka需要实现负载均衡时,就需要在一个topic下建立多个partition,此时
数如下图: 配置consumer的示例: 在创建Queue的时候,配置以url形式跟在队列名后面:session.createQueue("TEST.FOO?con
原创 2022-11-15 15:11:58
116阅读
Redis是一个Key Value数据库,支持丰富的数据类型,可以用做cache来也可以用做storage。目前仅支持replication。以下是对Redis HA方案进行总结,没有万能的解决方案,需要根据自己的生产环境的业务情况不断修改和完善自己的方案。一、redis_failover官方网站简介:使用ruby编写,通过NodeManager检查redis服务器的状态,然后更新zookeepe
转载 2023-08-24 18:57:33
47阅读
 小结可以看到 RocketMQ 和 Kafka 的消费者都是采用“长轮询”的机制,具体的做法都是通过消费者消息,当有消息的时候 Broker 会直接返回消息,如果没有消息都会采取延迟处理的策略,并且为了保证消息的及时性,在对应队列或者分区有新消息到来的时候都会提醒消息来了,及时返回消息。一句话说就是消费者和 Broker 相互配合,取消息请求不满足条件的时候 hold 住,避免了
概念—Kafka 是一种高吞吐量、分布式、基于发布/订阅的消息系统,最初由 LinkedIn 公司开发,使用 Scala (JAVA)语言编写,目前是Apache 的开源项目。主要解决应用解耦、异步消息、流量削峰等问题。Kafka实际上也是一个主从架构,有一个Controller角色即控制器,协调管理整个集群。关键术语—brokerKafka 服务器,负责消息存储和转发。topic消息类别,Kaf
转载 1月前
68阅读
消息队列的两种模式1、点对点,一条消息只能被一个消费者所消费2、发布订阅生产者将消息发布后,订阅的消费者会拿到该消息发布订阅模式分为模式和拉模式两种:1、模式(producer将消息推送到可用的consumer中)缺点:不能根据每个消费者的消费能力来选择性推送2、拉模式(producer有消息后,consumer从topic中根据自己的消费能力取消息)缺点:consumer需要维持一个长链接
转载 5月前
229阅读
任何脱离业务的架构设计都是耍流氓。状态同步,有好友状态的同步,有群友状态的同步,有的需要实时同步,有的能够容忍延时。结合具体场景来看下,状态同步,究竟是还是。用户的在线状态,分为客户端状态(端),服务端状态(云)两种形态。什么是服务端状态?服务端状态,主要分为在线online和离线offline,不同的状态,对于不同的业务处理流程可能不同。例如对于消息的处理:服务端状态在线,直接投递给用户服务
原创 2020-11-11 15:51:49
216阅读
     之前的Kafka学习笔记,我们介绍了Kafka的基本特性以及windows环境下Kafka的安装和使用,详情可以参见如下两篇博客:kafka学习笔记(一)–初识kafkakafka学习笔记(二)–windows环境下kafka2.1的安装和使用因为Kafka的源码使用Scala和Java两种语言实现的,所以本篇博客的开发的案例中使用了 Java和S
转载 10月前
48阅读
状态同步,究竟是还是?原创:58沈剑架构师之路5月15日任何脱离业务的架构设计都是耍流氓。状态同步,有好友状态的同步,有群友状态的同步,有的需要实时同步,有的能够容忍延时。结合具体场景来看下,状态同步,究竟是还是。用户的在线状态,分为客户端状态(端),服务端状态(云)两种形态。什么是服务端状态?服务端状态,主要分为在线online和离线offline,不同的状态,对于不同的业务处理流程可能
转载 2018-07-01 15:31:24
322阅读
到底要模式还是拉模式呢?
转载 2021-09-15 17:05:37
84阅读
今天我们就来谈一谈消息队列的推拉模式,这也是一个面试热点,例如你在简历里面写了 RocketMQ ,基本上会问你 RocketMQ 采用的是模式还是拉模式啊?是拉模式?不是有 PushConsumer 吗? 今天我们就来谈谈推拉模式,并且再来看看 RocketMQ 和 Kafka 是如何做的。   推拉模式 首先明确一下推拉模式到底是在讨论消息队列的哪一个步骤,一般而言我们在谈论推拉模式的时候指
转载 2021-07-16 15:25:08
170阅读
  • 1
  • 2
  • 3
  • 4
  • 5