kafka
文章平均质量分 71
kafka相关内容
LWD-824
76人永远的3号
展开
-
24 geek-请求是怎么被处理的?
从这张图中,我们可以发现,多个客户端会发送请求给到Reactor。Reactor有个请求分发线程Dispatcher,也就是图中的Acceptor,它会将不同的请求下发到多个工作线程中处理。Kafka提供了Broker端参数num.network.threads,用于调整该网络线程池的线程数。Reactor模式如图。原创 2023-04-10 12:52:41 · 85 阅读 · 0 评论 -
22geek-消费者组消费进度监控都怎么实现?
滞后:消费速度小于生产速度由于消费者的速度无法匹及生产者的速度,极有可能导致它消费的数据已经不在操作系统的页缓存中了。这样的话,消费者就不得不从磁盘上读取它们,这就进一步拉大了与生产者的差距,进而出现马太效应,即那些Lag原本就很大的消费者会越来越慢,Lag也会越来越大。原创 2023-04-10 11:46:05 · 42 阅读 · 0 评论 -
21 geek-Java 消费者是如何管理TCP连接的?
与producer不同,消费者不会再new的时候创建tcp链接。生产者入口类KafkaProducer在new的时候,会在后台默默地启动一个Sender线程,这个线程负责Socket连接的创建(缺点:Java构造函数中启动线程,会造成t,这始终是一个隐患。创建时机:01、还记得消费者端有个组件叫协调者(Coordinator)吗?它驻留在Broker端的内存中,负责消费者组的组成员管理和各个消费者的位移提交管理。原创 2023-04-10 11:30:31 · 64 阅读 · 0 评论 -
geek-客户端都有哪些不常见但是很高级的功能?
而Flume中的拦截器也是同理,它们插入的逻辑可以是修改待发送的消息,也可以是创建新的消息,甚至是丢弃消息。在上面的消费者拦截器中,我们在真正消费一批消息前首先更新了它们的总延时,方法就是用当前的时钟时间减去封装在消息中的创建时间,然后累计得到这批消息总的端到端处理延时并更新到Redis中。从技术上来说,我们可以在客户端程序中增加这样的统计逻辑,但是对于那些将Kafka作为企业级基础架构的公司来说,在应用代码中编写统一的监控逻辑其实是很难的,毕竟这东西非常灵活,不太可能提前确定好所有的计算逻辑。原创 2023-04-06 07:48:12 · 176 阅读 · 0 评论 -
geek-如何配置Kafka无消息丢失
当增加主题分区后,在某段“不凑巧”的时间间隔后,Producer先于Consumer感知到新增加的分区,而Consumer设置的是“从最新位移处”开始读取消息,因此在Consumer感知到新分区前,Producer发送的这些消息就全部“丢失”了,或者说Consumer无法读取到这些消息。我们先从什么是消息丢失开始说起,明确了Kafka持久化保证的责任边界,随后以这个规则为标尺衡量了一些常见的数据丢失场景,最后通过分析这些场景,我给出了Kafka无消息丢失的“最佳实践”。第一个核心要素是“已提交的消息”。原创 2023-04-06 07:45:37 · 65 阅读 · 0 评论