4

プロデューサー構成の下の0.8ドキュメントから、プロパティrequest.required.acks

値は、いつproducer receives an acknowledgementブローカーから送信されるかを制御します。

典型的な値は

(1) 0。これは、プロデューサがブローカからの確認をまったく待機しないことを意味します

(2) 1 はproducer gets an acknowledgement、リーダー レプリカがデータを受信した後であることを意味します。

(3) -1。これは、producer gets an acknowledgementすべての同期レプリカがデータを受信した後であることを意味します。

request.required.acks値がの場合、プロデューサーでこの確認を受け取る方法を教えてください1。ボイドであるため、それproducer.send(MessageKey)を取得するオプションが見つかりませんでした。

4

1 に答える 1

0

プロデューサー送信の API には、特に非同期モードで、多くの要望が残されています。これらの ack は、プロデューサー オブジェクトのユーザーには表示されません。それらが失敗すると、最終的に例外が表示されます。

非同期の場合の問題は、失敗したバッチが開始されたことがわからないため、後で送信を再試行する場合は推測が必要になることです。

将来のリリース (> 0.8.0) でこれを改善する計画があるようです。

于 2014-01-31T17:40:01.167 に答える