![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
kafka
文章平均质量分 95
流年ln
这个作者很懒,什么都没留下…
展开
-
五、Kafka日志存储
在日志清理的同时,客户端也可以读取日志中的消息。LogCompaction执行过后的日志分段的大小会比原先的日志分段的要小,为了防止出现太多的小文件,Kafka在实际清理过程中并不对单个的日志分段进行单独清理,而是将日志文件中offset从0至firstUncleanableOffset的所有日志分段进行分组,每个日志分段只属于一组,分组策略为按照日志分段的顺序遍历,每组中日志分段的占用空间大小之和不超过segmentSize(可以通过broker端参数。...原创 2022-07-27 15:35:29 · 1745 阅读 · 0 评论 -
四、Kafka主题与分区
指定主题名称指定分区数指定副本个数脚本执行完成后,log.dir目录下创建对应的主题分区。4个分区,两个副本总共八个副本,分配到三台机器(这里是用windows搭建的集群),8=3+3+2。如果是三个分区三个副本,9=3+3+3。主题、分区、副本、log关系如下这里我们还可以通过zk的客户端查看主题信息还可以通过describe来查看分区的分配细节手动指定副本的分配方案。根据分区号的数值从小到到大的顺序排列。分区之间用,隔开,分区内多个副本用隔开。注意要点__和。......原创 2022-07-25 18:02:50 · 1461 阅读 · 0 评论 -
三、Kafka消费者
消费者(Consumer)负责订阅Kafka主题,并从订阅的主题上拉取消息。与其它消息中间件不同的是:Kafka消费理念中还有一层消费者组(Consumer Group)的概念,一个消费者组包含多个消费者,消息发布到主题后,会投递给每个消费者组中的其中一个消费者。如上图,一个主题有四个分区,P0、P1、P2、P3。两个消费者组A、B都订阅了这个主题,消费者组A中有四个消费者C1、C2、C3、C4,消费者组B中有两个消费者C5、C6。Kafka默认规则,最后的分配是消费者A组中非每一个消费者消费一个分区,B原创 2022-07-24 15:07:37 · 2325 阅读 · 0 评论 -
二、kafka生产者
在生产者发出消息到写入服务器之前,可能会发生一些异常,网络抖动、leader选举等,这些异常是可以通过内部重试机制而成功发送消息的,如果重试达到设置的次数,生产者放弃重试并返回异常。KafkaProducer要将消息追加到给定主题的某个分区对应的leader副本之前,需要知道主题的分区数量,然后计算目标分区,之后KafkaProducer需要知道leader副本所在的broker结点地址、端口才能建立连接,最终才能叫消息发送到Kafka,这一过程中需要的信息都属于元数据信息。下图,Node1的负载最小。..原创 2022-07-22 16:41:24 · 552 阅读 · 0 评论 -
一、初识kafka
一个kafka集群包含若干的Producer、若干Broker、若干的Consumer,以及一个Zookeeper集群。Zookeeper是负责Kafka元数据管理、控制器选举等操作的。Producer将消息发送到Broker,Broker将消息存储都磁盘,Consumer从Broker订阅并消费消息。Kafka体系中引入了一下三个术语。生产者,也就是发送消息的一方。生产者负责创建消息,然后将其投递到Kafka中。消费者,也就是接收消息的一方。...原创 2022-07-21 11:22:23 · 244 阅读 · 0 评论