1.ProducerRecord 含义: 发送给Kafka Broker的key/value 值对
2.内部数据结构:
-- Topic (名字)
-- PartitionID ( 可选)
-- Key[( 可选 )
-- Value
3.生产者记录(简称PR)的发送逻辑:
<1> 若指定Partition ID,则PR被发送至指定Partition
<2> 若未指定Partition ID,但指定了Key, PR会按照hasy(key)发送至对应Partition
<3> 若既未指定Partition ID也没指定Key,PR会按照round-robin模式发送到每个Partition
<4> 若同时指定了Partition ID和Key, PR只会发送到指定的Partition (Key不起作用,代码逻辑决定)
4.生产者记录(PR)的实现:
针对3,提供三种构造函数形参:
-- ProducerRecord(topic, partition, key, value)
-- ProducerRecord(topic, key, value)
-- ProducerRecord(topic, value)
时间: 2024-10-19 18:51:21