Kafka 编程实践
搭建了一个Kafka集群之后,看怎么用Java程序编写去利用它。
参考Kafka文档(http://kafka.apache.org/documentation/),Kafka可以用在三个场景:
- Messaging System
- Storage System
- Stream Processing
我用Java实现了一个“生产者-消费者”的场景。打算用一个工程,通过参数的形式来分别启动“生产者”和“消费者”进程。
建一个Java+Maven工程,在pom.xml中加个包:
新建三个类:Main、Producer、Consumer
- Main,负责启动程序并解析参数,选择启动Producer还是Consumer;
- Producer,负责生产一批量的消息到一个topic
- Consumer,循环监听一个topic,有消息就打印
Producer类
消息:我设定消息是一个Json字符串,模拟得像样一点:
生产它们:
Consumer类
获取:
Main类
运行起来
生产:
消费: