kafka

starzy199011 小时前
大数据·kafka
KafkaProducer 源码深度剖析:与 Broker 建立连接前面讲网络设计时提到,Kafka 用一个 Selector 管理所有 Broker 连接。但连接不是一开始就有的——Producer 启动时不建连,第一次发消息时才触发。
我不会起名字32215 小时前
kafka·消息队列·幂等·排查
Kafka 重复消费:自动提交位点与手动提交的 3 个错位我不会起名字322 · 后端 / 算法 / 数据库📘 技术栈 | 🧩 力扣 Hot100 | 🐹 Go 项目 | 🟥 Redis | 🐬 MySQL
ly76892 天前
spring·kafka·apache·并发消费·消费者重试·死信主题·位移提交
Kafka 消费者重试与死信:Spring for Apache Kafka 的边界设计假设你维护一个订单履约系统:订单服务把“订单已支付”事件写进 Kafka 主题 order-paid,履约服务订阅这个主题,收到消息后调用库存服务扣减库存、再写一条履约记录。某天库存服务因为一次发布短暂不可用,履约服务消费到的消息在扣库存时抛出异常。这时候你必须回答四个问题:
我不会起名字3223 天前
kafka·消息队列·顺序·排查
Kafka 顺序消息为什么乱了:分区数变化与重试的 3 类原因我不会起名字322 · 后端 / 算法 / 数据库📘 技术栈 | 🧩 力扣 Hot100 | 🐹 Go 项目 | 🟥 Redis | 🐬 MySQL
每天一道题3 天前
分布式·kafka
Kafka 是如何工作的?从 Broker、Partition、Offset 到 Consumer Group在微服务系统中,Kafka 经常和 Redis、MySQL 一起出现。例如一个电商系统,用户支付成功之后,除了需要修改订单状态,还可能需要发送短信、更新销售统计、记录用户行为。
ClouGence4 天前
数据库·kafka·开源
还在用命令行管理 Kafka?开源 CloudDM 让操作更简单在日常开发和运维中,查看 Kafka Topic、消费消息、排查数据问题,都是常见操作。如果这些工作能直接在 Web 界面完成,会方便不少。
Sayai4 天前
大数据·运维·分布式·kafka·消息队列
Kafka 磁盘空间治理实战:retention 保留策略、log.dirs 在线扩容、分区跨盘迁移与不停机整体换盘消息队列 Kafka 用得越久,磁盘水位告警来得越勤:日志类 topic 日增几十 GB、大分区全挤在一块盘上、系统盘被 server.log 慢慢吃光。本文把生产环境沉淀的四类存储治理手段整理成一套完整 SOP——保留策略让数据"删得快"、数据目录扩容让集群"装得下"、分区跨盘迁移让磁盘"搬得平"、整体换盘让硬件"换得走",全部支持滚动操作不停机,附踩坑清单。命令在 Kafka 2.5 与 3.9 集群上均验证过。
孤狼GPT4 天前
kafka·springboot·codex·chatgptplus·chatgptpro
ChatGPT、Codex排查实录:Kafka消费者日志明明显示处理成功,为什么同一条消息还是被重复消费?。这类故障的关键,不是简单地关闭自动提交,而是弄清楚数据库事务、Offset提交和业务幂等之间的关系。
starzy19904 天前
大数据·kafka
KafkaProducer 源码深度剖析:batch 发送的条件前面讲 Sender 线程时提到,Sender 每轮调用 accumulator.ready() 获取有可发送批次的 Broker 集合,然后 drain() 拉取。但 ready() 到底怎么判断一个 batch “可以发了”?这个判断逻辑直接决定了延迟和吞吐的平衡。
SL-staff5 天前
elasticsearch·kafka·jvs运维·es冷热分离·rabbitmq监控·中间件巡检·sre实践
JVS私有化部署运维避坑指南:Kafka容灾、ES冷热分离、RabbitMQ可观测性三实战检查项JVS作为企业级开源低代码平台,其生产就绪性高度依赖底层开源中间件的正确配置与持续治理。Nacos服务发现、SkyWalking链路追踪、Redisson分布式锁、Kafka流程消息总线、RabbitMQ异步任务队列、ElasticSearch审计日志检索——这些组件均非‘部署即完成’的黑盒,而是需按生产环境SLA主动调优、监控与故障闭环的基础设施。
starzy19905 天前
大数据·数据结构·kafka
KafkaProducer 源码深度剖析:支撑高吞吐的数据结构设计很多人写 Producer 封装会用 ConcurrentHashMap<TopicPartition, Queue<ProducerRecord>>——每来一条消息塞进去,后台线程消费。功能上没问题,但性能差一个数量级。
starzy19906 天前
大数据·kafka
KafkaProducer 源码深度剖析:RecordAccumulator 封装消息流程前面几篇讲了 send() 怎么序列化、怎么选分区。但选完分区后,消息不是直接发出去的——那样每条消息一次网络请求,吞吐会惨不忍睹。
starzy19906 天前
大数据·kafka
KafkaProducer 加载元数据:一条 MetadataRequest 的完整旅程摘要: 第二篇讲了 waitOnMetadata 怎么阻塞、为什么等 60 秒。这篇补上另一面——Sender 线程到底发了什么请求、Broker 返回了什么、客户端怎么把响应变成 Cluster 对象。bootstrap.servers 只是敲门地址,全集群拓扑是一条 MetadataRequest 拉回来的。
RobinXYuan6 天前
kafka·源码阅读
【Kafka 源码手记】04 客户端如何找到 Broker上一篇结尾留下了一条悬念:Producer 「查元数据缓存」查到的那些 Leader 位置,最初是从哪来的?bootstrap.servers 明明只写了一个地址,客户端怎么找齐了整个集群?
Linux实战笔记7 天前
kafka·rabbitmq·高并发·pulsar·消息队列选型
记一次消息队列选型对比线上排查:Kafka/RabbitMQ/Pulsar 技术选型<p style="text-align:center"><img src="https://platform-outputs.agnes-ai.space/images/t2i/task_P6XkEZpiWIIilp5Sokq2yFRlHEjjBKFA/output_6b9cee5cb2a24f13b96a04b6b0995f67.png" alt="封面图" style="max-width:100%;height:auto" /></p>
Norris Huang7 天前
分布式·flink·kafka
Kafka Connect 与 Flink CDC 写入 Iceberg:Upsert 的代价,以及 S3 Tables 的真正价值把数据库变更同步到 Iceberg,真正困难的不是把一条新记录写成 Parquet,而是处理一条 UPDATE 或 DELETE:
张彦峰ZYF7 天前
后端·kafka·消息队列·rabbitmq·isr·解耦与削峰·丢失与重复
一条消息的丢与重:Kafka 与 RabbitMQ 可靠投递的确认、位点、死信与幂等全链路目录一、消息为什么会丢、也会重(一)一条消息要跨过的三段旅程(二)三种投递语义:不丢与不重为何不可兼得
我不会起名字3228 天前
kafka·消息队列·调优·分区
Kafka 分区数到底设几个:吞吐量、顺序性与 rebalance 代价的取舍我不会起名字322 · 后端 / 算法 / 数据库📘 技术栈 | 🧩 力扣 Hot100 | 🐹 Go 项目 | 🟥 Redis | 🐬 MySQL
starzy19909 天前
分布式·kafka
深度拆解 Kafka 源码:Producer 构造器装配了哪些核心组件摘要:一行 new KafkaProducer(props) 背后,是配置校验、序列化器/分区器/拦截器装配、32MB 发送缓冲、事务管理器与一条 Sender 守护线程的完整启动,却没有发起任何一次网络请求。本文基于 kafka-clients 3.9.x 源码,逐段拆解初始化全过程,并给出生产环境排查清单。