Kafka学习之路

Kafka 简介

Kafka 是最初由 Linkedin 公司开发,是一个分布式、分区的、多副本的、多订阅者,基于 zookeeper 协调的分布式日志系统(也可以当做 MQ 系统),常见可以用于 web/nginx 日志、访问日志,消息服务等等,Linkedin 于 2010 年贡献给了 Apache 基金会并成为顶级开源项目。

主要应用场景是:日志收集系统和消息系统。

Kafka 主要设计目标如下:

  • 以时间复杂度为 O(1)的方式提供消息持久化能力,即使对 TB 级以上数据也能保证常数时间的访问性能。
  • 高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒 100K 条消息的传输。
  • 支持 Kafka Server 间的消息分区,及分布式消费,同时保证每个 partition 内的消息顺序传输。
  • 同时支持离线数据处理和实时数据处理。
  • Scale out:支持在线水平扩展

Kafka 就是一种发布-订阅模式

二、Kafka 的优点
2.1  解耦
2.2  冗余(副本)
2.3  扩展性
2.4  灵活性&峰值处理能力
2.5  可恢复性
2.6  顺序保证
2.7  缓冲
2.8  异步通信

参考资源

Kafka 分布式发布订阅消息系统

tags: 202101

Kafka 简介

Kafka 是最初由 Linkedin 公司开发,是一个分布式、分区的、多副本的、多订阅者,基于 zookeeper 协调的分布式日志系统(也可以当做 MQ 系统),常见可以用于 web/nginx 日志、访问日志,消息服务等等,Linkedin 于 2010 年贡献给了 Apache 基金会并成为顶级开源项目。

主要应用场景是:日志收集系统和消息系统。

Kafka 主要设计目标如下:

  • 以时间复杂度为 O(1)的方式提供消息持久化能力,即使对 TB 级以上数据也能保证常数时间的访问性能。
  • 高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒 100K 条消息的传输。
  • 支持 Kafka Server 间的消息分区,及分布式消费,同时保证每个 partition 内的消息顺序传输。
  • 同时支持离线数据处理和实时数据处理。
  • Scale out:支持在线水平扩展

Kafka 就是一种发布-订阅模式

二、Kafka 的优点
2.1  解耦
2.2  冗余(副本)
2.3  扩展性
2.4  灵活性&峰值处理能力
2.5  可恢复性
2.6  顺序保证
2.7  缓冲
2.8  异步通信

常用命令

Resources