1: topic ,分区,groupID影响着分区
当更换了groupID,以前没有记录过就从头开始消费(earliest),消费完毕,就会记录下来,在读就不会重复读取,
//earliest:从头开始 --from-beginning
//latest:从消费者启动之后
当是latest,即使更换了groupID,也不会读取数据,消费者第一次启动才会读取数据
2: //props.setProperty("enable.auto.commit", "false") // 不让kafka自动维护偏移量'
不让他维护偏移量就是不让他在写入kafuka特殊的topic里.我们再次启动消费者会读取没有写入特殊的topic的内容
不让他维护偏移量可以写入mysql中,
3:groupID回一个组的消费者 ,只能有一个grouoId读取某个生产者数据,在同一个组内消费者不能交叉
但是不同的组,消费不受影响
1:生产者
object ProducerDemo {
def main(args: Array[String]): Unit = {
// 1 配置参数
val props = new Properties()
// 连接kafka节点
props.setProperty("bootstrap.servers", "node-1.51doit.cn:9092,node-2.51doit.cn:9092,node-3.51doit.cn:9092")
//指定key序列化方式
props.setProperty("key.serializer", "org.apache.kafka.common.serialization.StringSerializer")
//指定value序列化方式