The time to wait for the Java KafkaProducer
to shutdown.
The default value is 60 seconds.
The Serializer
to use for serializing record keys.
The ProducerFactory for creating the Java Producer
.
The ProducerFactory for creating the Java Producer
.
The default is ProducerFactory#Default. Note that you
normally don't need to have a custom ProducerFactory,
and you should instead prefer to create a custom trait or
class similar to KafkaProducer for testing purposes.
Properties which can be provided when creating a Java KafkaProducer
instance.
Properties which can be provided when creating a Java KafkaProducer
instance. Numerous functions in ProducerSettings add properties
here if the settings are used by the Java KafkaProducer
.
The Serializer
to use for serializing record values.
Returns a new ProducerSettings instance with the specified acknowledgements.
Returns a new ProducerSettings instance with the specified
acknowledgements. This is equivalent to setting the following
property using the withProperty function, except you can
specify it with Acks instead of a String
.
ProducerConfig.ACKS_CONFIG
Returns a new ProducerSettings instance with the specified batch size.
Returns a new ProducerSettings instance with the specified
batch size. This is equivalent to setting the following property
using the withProperty function, except you can specify it
with an Int
instead of a String
.
ProducerConfig.BATCH_SIZE_CONFIG
Returns a new ProducerSettings instance with the specified bootstrap servers.
Returns a new ProducerSettings instance with the specified bootstrap servers. This is equivalent to setting the following property using the withProperty function.
ProducerConfig.BOOTSTRAP_SERVERS_CONFIG
Returns a new ProducerSettings instance with the specified client id.
Returns a new ProducerSettings instance with the specified client id. This is equivalent to setting the following property using the withProperty function.
ProducerConfig.CLIENT_ID_CONFIG
Creates a new ProducerSettings with the specified closeTimeout.
Returns a new ProducerSettings instance with the specified delivery timeout.
Returns a new ProducerSettings instance with the specified
delivery timeout. This is equivalent to setting the following
property using the withProperty function, except you can
specify it with a FiniteDuration
instead of a String
.
ProducerConfig.DELIVERY_TIMEOUT_MS_CONFIG
Returns a new ProducerSettings instance with the specified idempotence setting.
Returns a new ProducerSettings instance with the specified
idempotence setting. This is equivalent to setting the following
property using the withProperty function, except you can
specify it with a Boolean
instead of a String
.
ProducerConfig.ENABLE_IDEMPOTENCE_CONFIG
Returns a new ProducerSettings instance with the specified linger.
Returns a new ProducerSettings instance with the specified
linger. This is equivalent to setting the following property
using the withProperty function, except you can specify
it with a FiniteDuration
instead of a String
.
ProducerConfig.LINGER_MS_CONFIG
Returns a new ProducerSettings instance with the specified max in-flight requests per connection.
Returns a new ProducerSettings instance with the specified
max in-flight requests per connection. This is equivalent to
setting the following property using the withProperty
function, except you can specify it with an Int
instead
of a String
.
ProducerConfig.MAX_IN_FLIGHT_REQUESTS_PER_CONNECTION
Creates a new ProducerSettings with the specified ProducerFactory as the producerFactory to use.
Creates a new ProducerSettings with the specified ProducerFactory as the producerFactory to use. Note that under normal usage you don't need to have a custom ProducerFactory instance. For testing, you should prefer to create a custom trait or class similar to KafkaProducer.
Includes the specified keys and values as properties.
Includes the specified keys and values as properties. The
keys should be part of the ProducerConfig
keys, and
the values should be valid choices for the keys.
Includes the specified keys and values as properties.
Includes the specified keys and values as properties. The
keys should be part of the ProducerConfig
keys, and
the values should be valid choices for the keys.
Includes a property with the specified key
and value
.
Includes a property with the specified key
and value
.
The key should be one of the keys in ProducerConfig
,
and the value should be a valid choice for the key.
Returns a new ProducerSettings instance with the specified request timeout.
Returns a new ProducerSettings instance with the specified
request timeout. This is equivalent to setting the following
property using the withProperty function, except you can
specify it with a FiniteDuration
instead of a String
.
ProducerConfig.REQUEST_TIMEOUT_MS_CONFIG
Returns a new ProducerSettings instance with the specified retries.
Returns a new ProducerSettings instance with the specified
retries. This is equivalent to setting the following property
using the withProperty function, except you can specify
it with an Int
instead of a String
.
ProducerConfig.RETRIES_CONFIG
ProducerSettings contain settings necessary to create a KafkaProducer. At the very least, this includes a key serializer and a value serializer.
Several convenience functions are provided so that you don't have to work with
String
values andProducerConfig
for configuration. It's still possible to specifyProducerConfig
values with functions like withProperty.ProducerSettings instances are immutable and all modification functions return a new ProducerSettings instance.
Use
ProducerSettings#apply
to create a new instance.