Properties
Properties props = new Properties()
props.put(xxxx,xxxxx);
props.put(xxxx,xxxxx);
props.put(xxxx,xxxxx);
ProducerRecord <String , xxxClass> record = ProdecerRecord<String ,xxxClass>
(topic de name, key,value :可以是值或者是个封装好信息的类)
Producer<String ,String :具体这俩string控制什么我也闹不清楚> producer = new KafkaProducer<>(props);
好像是指定key和value的序列化方式 这里第二个String 应该改成xxxClass
最后调用send方法
for(循环xx次){
prodecer.send(record);
}
配置
1,bootstrap.servers 必传 一组指定的host:port
2,key.serializer 字节数组 使用卡夫卡默认的序列化的工具org.apache.kafka.common.serialization.StringSerializer
3,value.serializer 同上
io.confluent.kafka.serializers.KafkaAvroSerializer
上边三个是必传的
4,PROPERTY_SCHEMA_REGISTRY_URL 连接器 书里没讲
5,ACKS_CONFIG -1 1 all 分别是 不进行重传 只写到主服务器 所有都要重传
-1的吞吐量最大 all最小 1是折中
6,RETRIES_CONFIG重试次数
7,MAX_IN_FLIGHT_REQUESTS_PER_CONNECTION 最大发送请求的数量
8,batch.size 一次发送多少个 大巴车最多乘客40人
9,linger.ms 超过多少秒后必须发车
还有什么 压缩机制 暂时不想写了