Various properties can be specified inside your application.properties file, inside your application.yml file, or as command line switches.
This appendix provides a list of Spring Pulsar properties and references to the underlying classes that consume them.
| Spring Boot provides various conversion mechanism with advanced value formatting, make sure to review the properties conversion section. |
| Property contributions can come from additional jar files on your classpath, so you should not consider this an exhaustive list. Also, you can define your own properties. |
Pulsar Client Properties
| Name | Description | Default Value |
|---|---|---|
Authentication parameter(s) as a JSON encoded string. |
||
Fully qualified class name of the authentication plugin. |
||
Authentication parameter(s) as a map of parameter names to parameter values. |
||
Duration to wait for a connection to a broker to be established in milliseconds. |
|
|
DNS lookup bind address. |
||
DNS lookup bind port. |
|
|
Enables spin-waiting on executors and IO threads in order to reduce latency during context switches. |
|
|
Enables transactions. To use this, start the transactionCoordinatorClient with the pulsar client. |
|
|
Initial backoff interval in nanoseconds. |
|
|
Keep alive interval for broker-client connection in seconds. |
|
|
Listener name for lookup. Clients can use listenerName to choose one of the listeners as the service URL to create a connection to the broker. To use this, "advertisedListeners" must be enabled on the broker. |
||
Client lookup timeout in milliseconds. |
|
|
Maximum backoff interval in nanoseconds. |
|
|
Number of concurrent lookup-requests allowed to send on each broker-connection to prevent overload on broker. |
|
|
Maximum number of times a lookup-request to a broker will be redirected. |
|
|
Number of max lookup-requests allowed on each broker-connection to prevent overload on broker. |
|
|
|
Maximum number of broker-rejected requests in a certain timeframe, after which the current connection is closed and a new connection is created by the client. |
|
Limit of direct memory that will be allocated by the client. |
|
|
Maximum number of connections that the client will open to a single broker. |
|
|
Number of threads to be used for handling connections to brokers. |
|
|
Number of threads to be used for message listeners. The listener thread pool is shared across all the consumers and readers that are using a "listener" model to get messages. For a given consumer, the listener will always be invoked from the same thread, to ensure ordering. |
|
|
Client operation timeout in milliseconds. |
|
|
Pulsar cluster URL to connect to a broker. |
||
SOCKS5 proxy address. |
||
SOCKS5 proxy password. |
||
SOCKS5 proxy username. |
||
Name of the security provider used for SSL connections. |
||
Interval between each stat info in seconds. |
|
|
Whether the client accepts untrusted TLS certificates from the broker. |
|
|
Comma-separated list of cipher suites. This is a named combination of authentication, encryption, MAC and key exchange algorithm used to negotiate the security settings for a network connection using TLS or SSL network protocol. By default, all the available cipher suites are supported. |
||
Whether the hostname is validated when the proxy creates a TLS connection with brokers. |
|
|
Comma-separated list of SSL protocols used to generate the SSLContext. Allowed values in recent JVMs are TLS, TLSv1.3, TLSv1.2 and TLSv1.1. |
||
Path to the trusted TLS certificate file. |
||
Store password for the key store file. |
||
Location of the trust store file. |
||
File format of the trust store file. |
||
Enable KeyStore instead of PEM type configuration if TLS is enabled. |
|
|
Whether to use TCP no-delay flag on the connection, to disable Nagle algorithm. |
|
|
Whether to use TLS encryption on the connection. |
|
Pulsar Producer Properties
| Name | Description | Default Value |
|---|---|---|
Whether to automatically batch messages. |
|
|
Maximum number of messages to be batched. |
|
|
Time period within which the messages sent will be batched in milliseconds. |
|
|
Whether the "send" and "sendAsync" methods should block if the outgoing message queue is full. |
|
|
Time period to expire unused entries in the cache. |
|
|
Initial size of cache. |
|
|
Maximum size of cache (entries). |
|
|
Whether to split large-size messages into multiple chunks. |
|
|
Message compression type. |
||
Action the producer will take in case of encryption failure. |
||
Message hashing scheme to choose the partition to which the message is published. |
||
Name of the initial subscription of the topic. |
||
Maximum number of pending messages for the producer. |
|
|
|
Maximum number of pending messages across all the partitions. |
|
Message routing mode for a partitioned producer. |
||
Type of access to the topic the producer requires. |
||
Name for the producer. If not assigned, a unique name is generated. |
||
Time before a message has to be acknowledged by the broker in milliseconds. |
|
|
Topic the producer will publish to. |
Pulsar Consumer Properties
| Name | Description | Default Value |
|---|---|---|
Timeout for unacked messages to be redelivered. |
|
|
Time to group acknowledgements before sending them to the broker in microseconds. |
|
|
|
Whether to automatically drop outstanding un-acked messages if the queue is full. |
|
Whether the consumer auto-subscribes for partition increase. This is only for partitioned consumers. |
|
|
Consumer name to identify a particular consumer from the topic stats. |
||
Action the consumer will take in case of decryption failure. |
||
|
Time to expire incomplete chunks if the consumer won't be able to receive all chunks before in milliseconds. |
|
Maximum number of chunked messages to be kept in memory. |
|
|
|
Maximum number of messages that a consumer can be pushed at once from a broker across all partitions. |
|
Delay before re-delivering messages that have failed to be processed in microseconds. |
|
|
Auto-discovery period for topics when topic pattern is used in minutes. |
|
|
Priority level for shared subscription consumers. |
|
|
Map of properties to add to the consumer. |
||
Whether to read messages from the compacted topic rather than the full message backlog. |
|
|
Number of messages that can be accumulated before the consumer calls "receive". |
|
|
Determines which topics the consumer should be subscribed to when using pattern subscriptions. |
||
Whether to replicate subscription state. |
|
|
Position where to initialize a newly created subscription. |
||
Subscription name for the consumer. |
||
Subscription type to be used when subscribing to a topic. |
||
Precision for the ack timeout messages tracker in milliseconds. |
|
|
Comma-separated list of topics the consumer subscribes to. |
||
Pattern for topics the consumer subscribes to. |
||
AckMode for acknowledgements. Allowed values are RECORD, BATCH, MANUAL. |
||
Number of milliseconds to wait for enough message to fill a batch request before timing out. |
|
|
Max number of bytes in a single batch request. |
|
|
Max number of messages in a single batch request. |
|
|
SchemaType of the consumed messages. |
Pulsar Administration Properties
| Name | Description | Default Value |
|---|---|---|
Authentication parameter(s) as a JSON encoded string. |
||
Fully qualified class name of the authentication plugin. |
||
Authentication parameter(s) as a map of parameter names to parameter values. |
||
Pulsar service URL for the admin endpoint. |
||
Name of the security provider used for SSL connections. |
||
Whether the client accepts untrusted TLS certificates from the broker. |
|
|
Comma-separated list of cipher suites. This is a named combination of authentication, encryption, MAC and key exchange algorithm used to negotiate the security settings for a network connection using TLS or SSL network protocol. By default, all the available cipher suites are supported. |
||
|
Whether the hostname is validated when the proxy creates a TLS connection with brokers. |
|
Comma-separated list of SSL protocols used to generate the SSLContext. Allowed values in recent JVMs are TLS, TLSv1.3, TLSv1.2 and TLSv1.1. |
||
Path to the trusted TLS certificate file. |
||
Store password for the key store file. |
||
Location of the trust store file. |
||
File format of the trust store file. |
||
Enable KeyStore instead of PEM type configuration if TLS is enabled. |
|