Kafka学习

结构

分为消费者 Croducer 主题 Topic 生产者 Producer

其中Topic包括

Topic中包括了分区和offset偏移量的概念;

一个简单的Kafka发消息收消息java代码:

消费者:

java 复制代码
@Component
public class EventConsumer {
   @Resource
   private KafkaTemplate<String,String> kafkaTemplate;

   // 采用监听得方式接收
   @KafkaListener(topics = {"test"},groupId = "hello")
   public void onEvent(String event){
       System.out.println("读取到了时间消息: " + event);
   }
}

生产者

java 复制代码
@Component
public class EventProducer {
    @Resource
    private KafkaTemplate<String,String> kafkaTemplate;

    // 消息发送
    public void sendEvent(String message){
        kafkaTemplate.send("test",message);
    } 
}

消费者偏移量的设置

发送消息的一些方法

java 复制代码
// 消息发送
public void sendEvent(String message){
   kafkaTemplate.send("test",message);
}

// 发送message对象
public void sendEvent2(String message){
   // 创建message对象
   Message<String> kafka = MessageBuilder.withPayload(message)
           // 设置topic
           .setHeader(KafkaHeaders.TOPIC,"test")
           .build();
   kafkaTemplate.send(kafka);
}

public void sendEvent3(String message){
   // 消费者可以从Headers中取到信息.
   Headers headers = new RecordHeaders();
   headers.add("orderId","123".getBytes(StandardCharsets.UTF_8));
   ProducerRecord<String,String> record = new ProducerRecord<>(
           "test",
           0,
           System.currentTimeMillis(),
           "k1",
           message,
           headers);
   kafkaTemplate.send(record);
}
相关推荐
阿蒙Amon3 分钟前
JavaScript学习笔记:17.闭包
javascript·笔记·学习
想不出名字ಥ_ಥ9 分钟前
STM32学习笔记--01学会如何点亮一颗LED灯
笔记·stm32·学习
لا معنى له37 分钟前
学习笔记:循环神经网络(RNN)
人工智能·笔记·学习·机器学习
炒毛豆1 小时前
前端可视化-----svg学习笔记
笔记·学习
暗之星瞳1 小时前
PYTHON学习——决策树
python·学习·随机森林
炽烈小老头1 小时前
【 每天学习一点算法 2025/12/17】验证二叉搜索树
学习·算法
Century_Dragon1 小时前
在虚拟工位练真技——汽车塑料件拆装修复软件
学习
lin张1 小时前
Ansible学习总结:从基础命令到Playbook实战
网络·学习·ansible
AA陈超2 小时前
Lyra Starter Game 中 GameFeature 类(如 ShooterCore)的加载流程
c++·笔记·学习·ue5·虚幻引擎
‘胶己人’2 小时前
redis分布式锁
数据库·redis·分布式