zoukankan      html  css  js  c++  java
  • kafka和springboot整合应用

    加载依赖

    <dependency>
        <groupId>org.springframework.kafka</groupId>
        <artifactId>spring-kafka</artifactId>
    </dependency>
    

    yml对应配置

    spring:
        kafka:
          bootstrap-servers: sjck-node03:9092,sjck-node03:9093,sjck-node03:9094
          consumer:
            group-id: single-consumer-group
    

    生产者

    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.kafka.core.KafkaTemplate;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    public class KafkaProducer {
    
        @Autowired
        private KafkaTemplate kafkaTemplate;
    
        @RequestMapping("/send")
        public String send(String name){
            kafkaTemplate.send("kafka-action",name);
            return name;
        }
    
    }
    

    消费者

    import org.apache.kafka.clients.consumer.ConsumerRecord;
    import org.springframework.kafka.annotation.KafkaListener;
    import org.springframework.stereotype.Component;
    
    @Component
    public class KafkaConsumer {
        @KafkaListener(topics = "kafka-action")
        public void listen(ConsumerRecord<?,String> record){
            String value = record.value();
            System.out.println(value);
            System.out.println(record.toString());
        }
    }
    

    springboot项目启动成功,会打印出producer和consumer相关的配置信息

    producer请求send接口

    http://localhost:8011/send?name=today

    today
    

    控制台consumer输出

    2019-03-17 18:05:41.155  INFO 84622 --- [nio-8011-exec-1] o.a.kafka.common.utils.AppInfoParser     : Kafka version : 0.10.1.1
    2019-03-17 18:05:41.155  INFO 84622 --- [nio-8011-exec-1] o.a.kafka.common.utils.AppInfoParser     : Kafka commitId : f10ef2720b03b247
    today
    ConsumerRecord(topic = kafka-action, partition = 0, offset = 8, CreateTime = 1552817141215, checksum = 435080069, serialized key size = -1, serialized value size = 5, key = null, value = today)
    
    
  • 相关阅读:
    ext之Windows
    多个DIV显示/隐藏
    asp.net 得到上一页地址
    人们的文化和素质
    gridview 删除问题
    RSS of the Day: 新闻类Feeds
    每日英语:Taiwan Tech Firms Bring Jobs Home Quietly
    每日英语:Freedom and America's gun culture
    matlab学习:图像频域分析之Gabor滤波
    每日英语:The End Of The World Is (Not) Nigh
  • 原文地址:https://www.cnblogs.com/wanli002/p/10589923.html
Copyright © 2011-2022 走看看