kafka-demo

kaka的demo,了解kafka的原理,kfaka入门,或者说在工作中需要用到kafka的时候,可以挪用,方便初学者, 也方便工作
生产者
 

public class ProducerQuickStart {
	public static void main(String[] args) {
		//1.kafka的配置信息
		Properties properties = new Properties();
		//kafka的连接地址
		properties.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG,"192.168.200.130:9092");
		//发送失败,失败的重试次数
		properties.put(ProducerConfig.RETRIES_CONFIG,5);
		//消息key的序列化器
		properties.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG,"org.apache.kafka.common.serialization.StringSerializer");
		//消息value的序列化器
		properties.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG,"org.apache.kafka.common.serialization.StringSerializer");
		//2.生产者对象
		KafkaProducer<String, String> producer = new KafkaProducer<>(properties);
		//封装发送的消息
		ProducerRecord<String, String> record = new ProducerRecord<>("itheima-topic", "100001", "hello kafka");
		//3.发送消息
		producer.send(record);
		//4.关闭消息通道,必须关闭,否则消息发送不成功
		producer.close();
	}
}

消费者
 

public class ConsumerQuickStart {
	public static void main(String[] args) {
		//1.添加kafka的配置信息
		Properties properties = new Properties();
		//kafka的连接地址
		properties.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG,"192.168.200.130:9092");
		//消费者组
		properties.put(ConsumerConfig.GROUP_ID_CONFIG,"group2");
		//消息的反序列化器
		properties.put(ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG,"org.apache.kafka.common.serialization.StringDeserializer");
		properties.put(ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG,"org.apache.kafka.common.serialization.StringDeserializer");
		//2.消费者对象
		KafkaConsumer<String, String> consumer = new KafkaConsumer<>(properties);
		//3.订阅主题
		consumer.subscribe(Collections.singletonList("itheima-topic"));
		//当前线程一直处于监听状态
		while (true){
			//4.获取消息
			ConsumerRecords<String, String> consumerRecords = consumer.poll(Duration.ofMillis(1000));
			for (ConsumerRecord<String, String> consumerRecord : consumerRecords) {
				System.out.println(consumerRecord.key());
				System.out.println(consumerRecord.value());
			}
		}

	}
}

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

唐三葬PLUS

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值