
34
|
第
3
章
kafkaProps.put("bootstrap.servers", "broker1:9092,broker2:9092");
kafkaProps.put("key.serializer",
"org.apache.kafka.common.serialization.StringSerializer");
➋
kafkaProps.put("value.serializer",
"org.apache.kafka.common.serialization.StringSerializer");
producer = new KafkaProducer<String, String>(kafkaProps);
➌
➊
新建一个 Properties 对象。
➋
因为我们打算把键和值定义成字符串类型,所以使用内置的
StringSerializer
。
➌
在这里我们创建了一个新的生产者对象,并为键和值设置了恰当的类型,然后把
Properties
对象传给它。
这个接口很简单,通过配置生产者的不同属性就可以很大程度地控制它的行为。
Kafka
的
文档涵盖了所有的配置参数,我们将在这一章的后面部分介绍其中几个比较重要的参数。
实例化生产者对象后,接下来就可以开始发送消息了。发送消息主要有以下
3
种方式。
发送并忘记(
fire-and-forget
)
我们把消息发送给服务器,但并不关心它是否正常到达。大多数情况下,消息会正常到
达,因为
Kafka
是高可用的,而且生产者会自动尝试重发。不过,使用这种方式有时候 ...