消息队列应用场景:应用解耦、异步消息、流量削峰等问题,实现高性能、高可用、可伸缩和最终一致性架构。
Kafka是由LinkedIn开发的一个分布式的消息系统,可独立部署在单台服务器上,也可部署在多台服务器上构成集群。它提供了发布与订阅功能。用户可以发送数据到Kafka集群中,也可以从Kafka集群中读取数据。Kafka使用Scala编写,它以可水平扩展和高吞吐率而被广泛使用。
目前越来越多的开源分布式处理系统如Storm,Spark,Flink都支持与Kafka集成。现在我们的数据实时处理平台也使用到了Kafka。现在它已被多家不同类型的公司作为多种类型的数据管道和消息系统使用。
如下是Kafka消息中间件的架构图:
本技术专栏从实战出发,通过零基础入门-环境搭建-项目案例实战,让初学者快速掌握Kafka相关技术要点并投入实际项目开发,其中包括Kafka安装和配置、Kafka基本组件的实现机制、Zookeeper和控制器Controller、Kafka消息生产者和消息者的代码实现、以及和Spring Boot的集成开发、Kafka 可视化客户端工具Kafka Tool 2(Offset Explorer)和Kafka Eagle、Kafka Connect 连接器和Debezium等等。
专栏主要包含如下内容:
-
快速了解消息队列和Kafka基本概念、使用场景、以及性能好的原因
-
Kafka v2.3.1 安装、配置、启动和基本操作
-
安装和配置Kafka集群开源的可视化监控工具-Kafka Eagle
-
Kafka broker 开启 JMX监控
-
Kafka基本组件的实现机制,为什么要将Topic进行分区?如何保证高可靠性?
-
Kafka的元数据存储Zookeeper以及控制器Controller
-
Kafka v2.3.1通过客户端API实现简单生产者和消费者
-
Kafka生产者Producer使用异步模式发送消息
-
Kafka生产者Producer使用多线程发送消息
-
Kafka消息发送的主要步骤、配置参数、以及如何保证消息有序?
-
Kafka v2.3.1通过spring-kafka实现生产者和消费者
-
Kafka v2.3和Spring Boot v2.2.1使用@KafkaListener实现单条或批量接收消息
-
深入了解spring-kafka中核心技术概念-消息监听器、监听器容器并发数、@KafkaListener注解等等
-
spring-kafka 操作Topic以及可视化监控工具Kafka Eagle的使用
-
Kafka v2.3和Spring Boot v2.2.1集成项目示例源代码
-
Kafka可视化客户端工具Kafka Tool 2的基本使用
-
Kafka 在生产者Producer中实现并使用自定义分区器Partitioner
-
图文并茂演示如何通过Kafka Connect连接器建立数据管道
-
图文并茂演示Kafka Connect在分布式模式下将数据导入/导出Kafka Topic
-
Debezium和Kafka Connect实现MySQL数据高效实时同步Kafka Topic
-
Kafka Stream快速入门和实例项目WordCount详细演示