中间件与数据库:Kafka
Pinterest Tiered Storage for Apache Kafka®️: A Broker-Decoupled Approach
When it comes to PubSub solutions, few have achieved higher degrees of ubiquity, community support, and adoption than Apache Kafka®️, which has become the industry standard for data transportation at large scale. At Pinterest, petabytes of data are transported through PubSub pipelines every day, powering foundational systems such as AI training, content safety and relevance, and real-time ad bidding, bringing inspiration to hundreds of millions of Pinners worldwide. Given the continuous growth in PubSub-dependent use cases and organic data volume, it became paramount that PubSub storage must be scaled to meet growing storage demands while lowering the per-unit cost of storage.
DoorDash Empowers Engineers with Kafka Self-Serve
Learn how DoorDash built a Kafka self-serve platform to streamline infrastructure management, empower engineers, and enhance scalability and security.
Soul APP Kafka系统性治理之路
Apache Kafka 的定位是一个分布式流处理平台,它被设计用于处理高吞吐量的数据流。Kafka 能够在不同的系统和应用程序之间提供实时的数据传输、存储和流处理功能。Kafka 在现代数据架构中扮演着“承上启下”的角色,这意味着它在数据流和处理的不同阶段之间起到了桥梁的作用。具体来说,Kafka 可以从上游系统接收数据,并将其有效地传递到下游系统,同时还能在这些过程中对数据进行加工和处理。Kafka 成为了现代数据架构中不可或缺的消息引擎及流处理平台。
图解Kafka:架构设计、消息可靠、数据持久、高性能背后的底层原理
在构建高吞吐量和高可靠性的消息系统时,Apache Kafka 成为了众多程序员的首选。本文深入剖析了 Kafka 的内部机制,从宏观架构到消息流转的细节,揭示了 Kafka 如何通过精心设计的系统组件和策略,实现消息的异步处理和流量管理。
本文将带你探索 Kafka 的 ack 策略、数据持久化技术以及提升系统性能的关键设计,包括批量处理、压缩、PageCache 和零拷贝等技术。同时,文章还涵盖了负载均衡和集群管理,为你提供一个全面视角,理解 Kafka 如何满足大规模分布式系统中对消息队列的严苛要求。
Flipkart 异步总线如何实现不停机从 Kafka 迁移到 Pulsar
Flipkart 是印度领先的电子商务平台之一。我们基于 Kafka 打造的异步总线承接了公司海量的 HTTP 调用和消息传输。但随着业务的发展,Kafka 已经不能跟上公司快速变化的业务发展要求。随着调研和测试,我们最终决定使用 Pulsar 替换 Kafka。
从 Kafka 迁移到 Pulsar 给我们带来了诸多优势。Pulsar 内置的企业级功能,减少了我们自行开发和维护的成本,也降低了系统的总体复杂性。在 Kafka 中,这些高级功能都需要额外构建和维护。
Setting Up Kafka Multi-Tenancy
Discover how DoorDash implemented a multi-tenancy awareness system for both Kafka producers and consumers.
Introduction to Kafka Tiered Storage at Uber
Uber提出了Kafka分层存储方案,用于解决Kafka集群存储的扩展性、效率和操作成本问题。该方案通过引入本地和远程两个存储层,实现了存储的扩展性和长期存储的可行性。远程存储层可以使用不同的扩展存储,并具有更长的数据保留期。分层存储方案减轻了Kafka代理的本地存储负担,降低了操作成本。此外,该方案通过引入RemoteLogManager和RemoteStorageManager等组件,实现了远程日志的复制、获取和删除操作,并提供元数据的生命周期管理。分层存储方案的架构图展示了本地和远程日志的复制过程,以及远程日志的清理过程。跟随者副本需要复制可在领导者本地存储中找到的段,并在开始从领导者获取任何消息之前构建辅助数据。
Apache Kafka 在知乎的实践
知乎使用Kafka进行消息通知、日志传输和离线数据处理。面临的挑战是提升稳定性和可维护性,以及增加业务研发效率。文章介绍了采用k8s部署Kafka的关键技术,包括固定brok等。
小红书云原生 Kafka 技术剖析:分层存储与弹性伸缩
存储成本直降 60%,运维效率增至 10 倍,打造「弹性伸缩、按量付费」商品化模式
去哪儿KAFKA性能优化-节省2000核CPU
去哪儿旅行的Kafka日志集群在春节压测期间遇到性能问题,导致部分客户端堆积和数据生产异常。集群网络闲置率降低到0.4以下,部分机器接近闲置,无法通过增加机器解决性能问题。经排查,发现数据量增大和高峰期pod扩展导致网络链接数增加影响性能。通过将num.io.threads参数从32修改为128,优化了Kafka本身解决了问题,并节省了2000核CPU。此外,将单盘改为双盘并没有提升闲置率。
kafka-go消费者代码分析(一)
该文章介绍了在Go语言中使用kafka-go库创建消费者并进行数据消费的过程。重点讨论了重平衡的机制和实现。通过分析kafka-go库中的代码,展示了心跳机制的实现方式,并解释了当协调者通知消费者进行重平衡时,消费者如何暂停消费并重新加入消费组。重平衡期间,消费者会停止消费并重新分配分区。最后,消费者会重新创建协程进行数据的获取。这篇文章对于想要在Go语言中使用kafka-go库进行数据消费的开发者来说是非常有用的参考资料。
这些年背过的面试题——Kafka篇
本文是技术人面试系列Kafka篇,面试中关于Kafka都需要了解哪些基础?一文带你详细了解。
Kafka on Kubernetes: Reloaded for fault tolerance
Coban - Grab’s real-time data streaming platform - has been operating Kafka on Kubernetes with Strimzi in production for about two years. In a previous article (Zero trust with Kafka), we explained how we leveraged Strimzi to enhance the security of our data streaming offering.
In this article, we are going to describe how we improved the fault tolerance of our initial design, to the point where we no longer need to intervene if a Kafka broker is unexpectedly terminated.
Kafka 分级存储在腾讯云的实践与演进
本文介绍了一系列与微服务和消息队列相关的技术文章。其中包括云原生API网关支持WAF对象接入、Apache RocketMQ在腾讯云的实践、RocketMQ 5.X PopAck源码拆解等。该系列文章涵盖了多个技术领域,并提供了相关的详细信息和实践案例。
B站KAFKA探索与实践
Kafka 是我们公司各个部门的重要数据中间件,主要用于上报、暂存和分发各种数据。
Flink消费kafka数据同步问题排查
我们有一个flink任务,消费的kafka的数据,写入到es,非常简单的逻辑,但是出现了数据丢失的情况。