消息队列
qrne06
中关村码农
展开
-
kafka简介
一、基本概念介绍Kafka是一个分布式的、可分区的、可复制的消息系统。Kafka将消息以topic为单位进行归纳。将向Kafka topic发布消息的程序成为producers.将预订topics并消费消息的程序成为consumer.Kafka以集群的方式运行,可以由一个或多个服务组成,每个服务叫做一个broker.producers通过网络将消息发送到Kafka集群,集群向消费者提供消息客户端和...原创 2018-03-16 19:52:58 · 175 阅读 · 0 评论 -
Kafka Producer介绍
producer直接将数据发送到broker的leader(主节点),不需要在多个节点进行分发。为了帮助producer做到这点,所有的Kafka节点都可以及时的告知:哪些节点是活动的,目标topic目标分区的leader在哪。这样producer就可以直接将消息发送到目的地了。客户端控制消息将被分发到哪个partition。可以通过负载均衡随机的选择,或者使用分区函数。Kafka允许用户实现分区...原创 2018-03-16 19:54:55 · 406 阅读 · 0 评论 -
Kafka Consumer介绍
Kafka consumer消费消息时,向broker发出"fetch"请求去消费特定分区的消息。consumer指定消息在日志中的偏移量(offset),就可以消费从这个位置开始的消息。customer拥有了offset的控制权,可以向后回滚去重新消费之前的消息,这是很有意义的。推还是拉?Kafka最初考虑的问题是,customer应该从brokes拉取消息还是brokers将消息推送到cons...原创 2018-03-16 19:55:40 · 420 阅读 · 0 评论 -
一张图看懂kafka:leader, follower ,分区, 节点(broker)
原创 2018-03-16 20:01:31 · 5958 阅读 · 5 评论 -
kafka什么时候会丢消息
因为在具体开发中某些环节考虑使用kafka却担心有消息丢失的风险,本周结合项目对kafka的消息可靠性做了一下调研和总结:首先明确一下丢消息的定义。kafka集群中的部分或全部broker挂了,导致consumer没有及时收到消息,这不属于丢消息。broker挂了,只要消息全部持久化到了硬盘上,重启broker集群之后,使消费者继续拉取消息,消息就没有丢失,仍然全量消费了。以我的理解...原创 2019-06-29 23:25:47 · 6634 阅读 · 0 评论