关于服务
翻译我是一名数据工程师,专注于事件流,而 Apache Kafka 是我构建的几乎所有内容的基础。当您的服务需要无等待地通信时,当分析必须在几秒钟内反应而不是夜间批处理时,或者当您根本无法承受丢失一条消息时——这些正是我所面对的问题。我已经指导 Kafka 集群从第一个原型到每小时处理数百万事件的流量,我知道尖锐的边缘在哪里。
我的工作始于数据本身。我将领域建模为事件,决定什么属于一个主题,什么不属于,并选择一个分区键以在均匀分配负载的同时保持顺序保证。然后我构建流本身:为吞吐量或可靠性调整的生产者,按负载大小调整的消费者组,以及在 Kafka Streams 或 Flink 中实时连接、聚合和丰富数据的流处理作业。我非常重视精确一次语义:幂等生产者和事务写入,以确保重试不会在下游变成重复。
在快乐路径之外,我担心那些让我夜不能寐的事情。我建立一个模式注册表,以便生产者和消费者在不相互破坏的情况下演变,构建 Kafka Connect 管道将数据泵送到数据库和对象存储中,并设置死信队列、监控和消费者滞后警报,在任何东西进入生产之前。无论您是从头开始还是拯救一个脆弱的管道丢失消息——我都会帮助您构建一个您可以真正信任的东西。
— Kafka 集群设计、主题策略和分区、保留调整
— 生产者和消费者组、偏移管理、再平衡
— 使用 Kafka Streams 和 Apache Flink 进行流处理
— 精确一次语义、幂等和事务写入
— Kafka Connect、模式注册表、Avro 和 Protobuf
— 监控、消费者滞后警报和死信处理
我的工作始于数据本身。我将领域建模为事件,决定什么属于一个主题,什么不属于,并选择一个分区键以在均匀分配负载的同时保持顺序保证。然后我构建流本身:为吞吐量或可靠性调整的生产者,按负载大小调整的消费者组,以及在 Kafka Streams 或 Flink 中实时连接、聚合和丰富数据的流处理作业。我非常重视精确一次语义:幂等生产者和事务写入,以确保重试不会在下游变成重复。
在快乐路径之外,我担心那些让我夜不能寐的事情。我建立一个模式注册表,以便生产者和消费者在不相互破坏的情况下演变,构建 Kafka Connect 管道将数据泵送到数据库和对象存储中,并设置死信队列、监控和消费者滞后警报,在任何东西进入生产之前。无论您是从头开始还是拯救一个脆弱的管道丢失消息——我都会帮助您构建一个您可以真正信任的东西。
— Kafka 集群设计、主题策略和分区、保留调整
— 生产者和消费者组、偏移管理、再平衡
— 使用 Kafka Streams 和 Apache Flink 进行流处理
— 精确一次语义、幂等和事务写入
— Kafka Connect、模式注册表、Avro 和 Protobuf
— 监控、消费者滞后警报和死信处理