Kafka有什么用?以及注意事项

如果您刚刚开始使用 Apache Kafka,您就会知道有很多东西需要学习和注意。卡夫卡有什么用?我如何充分利用它?这些可能只是您脑海中闪过的几个问题,而尝试在线搜索答案可能会让人不知所措。我们已经为您完成了研究,并将答案放在这里以便于访问。继续阅读以了解它的用途以及使用 Kafka 时应注意的事项。

Apache Kafka 是由 LinkedIn 创建的开源流处理软件平台,目前由 Apache Software Foundation 开发。应用程序开发人员、IT 专业人员和数据管理员只是使用 Kafka 的一部分人。

据 Apache 软件基金会称,超过 80% 的财富 100 强公司都在使用这项技术。以下是一些快速统计数据,可以直观地了解有多少 Kafka 用户:10/10 的制造公司、7/10 的银行、10/10 的保险公司和 8/10 的电信公司使用该技术。

阿帕奇卡夫卡文档

Kafka 用于快速摄取、移动和消耗大量数据。它允许创建易于扩展的实时、高吞吐量、低延迟数据流。由于这些原因,该平台在大数据领域可靠、快速且广为人知。

在用例方面,Kafka 可用于网站活动跟踪,提供操作跟踪数据、日志聚合、流处理、事件溯源,作为消息代理的替代品,以及作为分布式系统的外部提交日志。

举一个具体的例子,纽约时报曾一度使用 Kafka 来存储他们发表的每一篇文章。除此之外,他们还使用 Kafka 和 Streams API 将实时发布的内容提供给读者访问其内容所依赖的各种应用程序和系统。

在与我们的客户合作时,我们发现 Kafka 的成功始于确保您的平台得到优化。由于平台内有如此多的潜力,因此确保您能充分利用它是关键。这里有 4 个最佳实践——我们将在另一篇文章中深入探讨——我们建议在优化 Kafka 时:

1.升级到最新版本。

使用过时版本的 Kafka 会导致重新平衡运行时间过长以及重新平衡算法失败。确保您使用的是最新版本的 Kafka 可以防止这些平衡问题并确保您充分利用该框架。

2. 了解如何提高数据吞吐率。

Kafka 具有控制数据如何在堆栈中移动的设置。了解和调整这些设置是提高数据吞吐率和充分利用 Kafka 架构的第一步。

3. 在编写主题时坚持随机分区,除非体系结构要求另有要求。

Kafka 支持随机写入。在调整 Kafka 时,您可能会想要指定数据写入的位置。但是,在大多数情况下,随机写入会产生更好的性能。

4. 调整消费者套接字缓冲区以实现高速摄取,同时保持数据完整性。

要调整消费者套接字缓冲区,能力更强的网络可以支持更大的缓冲区大小。例如,10Gbps 网络可能需要高达 16MB 的套接字缓冲区。

关注公众号“大模型全栈程序员”回复“小程序”获取1000个小程序打包源码。更多免费资源在http://www.gitweixin.com/?p=2627