kafka的生產者配置以及傳送資訊的三種方式

2022-05-05 22:57:17 字數 846 閱讀 2135

1、fire-and-forget

這種方式是不管傳送成功與否,客戶端都會返回成功。儘管大多數的時候kafka 在傳送失敗後,會自己重新自動再一次傳送訊息,但是也會存在丟失訊息的風險

producerrecordrecord = new producerrecord(topic, "msg-fire-forget",

"welcome to my home!!! ");

try

catch

(exception e)

finally

2、synchronous send---同步

這種方式是同步傳送的方式,會等待future 物件的返回來判斷是否傳送成功。

producerrecordrecord = new producerrecord(topic, "msg-sync",

"sync message");

try

catch

(exception e)

finally

3、asynchronous send---非同步**

非同步傳送基於實現了send() 方法的**函式

producerrecordrecord = new producerrecord(topic, "msg-async",

"sync message");

try});

system.out.println("stop sending....");

} catch

(exception e)

finally

參考:

kafka生產者例項配置引數

kafkaproducer中有三個引數是必填的 bootstrap.servers 指定生產者客戶端連線kafka集群所需的broker位址列表,格式為host1 port1,host2 port2,可以設定乙個或多個。這裡並非需要所有的broker位址,因為生產者會從給定的broker裡尋找其它的...

Kafka中生產者的配置詳情

引數 預設值描述 producer.type sync 指定訊息傳送是同步還是非同步。非同步asyc成批傳送用kafka.producer.ayncproducer,同步sync用kafka.producer.syncproducer metadata.broker.list boker list ...

Kafka之生產者

1 方便在集群中擴充套件,乙個topic可以有多個partition組成,而每個partition可以通過調整以適應它所在的機器 2 可以提高併發,因為可以以partition為單位讀寫 我們需要將生產者傳送的資料封裝成乙個producerrecord物件。1 指明partition的情況下,直接將...