初识Kafka

Kafka的基本介绍

官网:http://kafka.apache.org/

kafka是一个分布式,分区的,多副本的,多订阅者的消息发布订阅系统(分布式MQ系统),可以用于搜索日志,监控日志,访问日志等。

最初由linkedin公司开发,使用scala语言编写。

kafka对消息保存时根据 Topic进行归类
发送消息者称为:Producer(生产者)
消息接收者称为:Consumer(消费者)
kafka集群由多个kafka实例组成每个实例server称为:Broker(服务器)

无论kafka集群,还是producerconsumer都依赖于zookeeper来保证系统可用性集群保存一些meta信息。


Kafka的好处

  • 可靠性:分布式的,分区,复制和容错。
  • 可扩展性:kafka 消息传递系统轻松缩放,无需停机。
  • 耐用性:kafka 使用分布式提交日志,这意味着消息会尽可能快速的保存在磁盘上,因此它是持久的。
  • 性能:kafka 对于发布和订阅消息都具有高吞吐量。及时存储了许多TB的消息,也爆出稳定的性能。
  • kafka非常快:保证零停机和零数据丢失。

分布式的发布与订阅系统

apache kafka是一个分布式发布-订阅消息系统和一个强大的队列,可以处理大量的数据,并使能够将消息从一个端点传递到另一个端点,kafka适合离线和在线消息消费

kafka消息保留在磁盘上,并在集群内复制以防止数据丢失。

kafka构建在zookeeper同步服务之上。它与apache和spark非常好的集成,应用于实时流式数据分析。


kafka的主要应用场景

  • 指标分析:通常用于操作监控数据辅助分析。
  • 日志的汇聚:在多节点,多业务生产数据的系统直接调用 kafka Producer 的API 发送数据。
  • 流式处理:kafka 可以实时传递数据到实时计算框架中(sparkstreaming finlk)。
Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐