SpringBoot整合Kafka消息中间件

本文介绍了Kafka作为分布式日志系统和消息服务的主要应用场景、设计目标,以及如何利用Docker搭建Kafka环境。接着详细阐述了在SpringBoot项目中整合Kafka的步骤,包括创建消息提供者和消费者,实现消息的发送与接收。
摘要由CSDN通过智能技术生成

kafka

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

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

Kafka主要设计目标如下:

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

更多参考 https://www.cnblogs.com/qingyunzong/p/9004509.html

docker搭建kafka环境

  1. 启动zookeep

    docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper
    
  2. 启动kafka

    docker run  -d --name kafka \
    -p 9092:9092 \
    -e KAFKA_BROKER_ID=0 \ 
    -e KAFKA_ZOOKEEPER_CONNECT=192.168.75.50:2181 \ 
    -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.75.50:9092 \
    -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka 
    
  3. 集群搭建(可选)

    docker run -d --name kafka1 \
    -p 9093:9093 \
    -e KAFKA_BROKER_ID=1 \
    -e KAFKA_ZOOKEEPER_CONNECT=
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值