<@U078Y59KC3B> What is the broker configuration `p...
# ask-ai
t
@RunLLM What is the broker configuration
preciseTopicPublishRateLimiterEnable
meant for?
r
The
preciseTopicPublishRateLimiterEnable
broker configuration enables a more accurate (precise) topic-level publish rate limiter in Pulsar. When set to true, it uses a precise rate limiter to enforce publish rate limits per topic, improving throttling accuracy compared to the default mechanism, which may be less effective in some scenarios. This setting is useful if you require strict enforcement of publish rate limits at the topic level, but it may introduce additional lock contention and latency under high load, as noted in user reports and discussions[^1][^2]. Would you like more detail on how this setting works or its performance implications? Sources: - StreamNative Docs: Resource Management Settings - GitHub Issue: RateLimiter lock contention when use precise publish rate limiter 👍 0 button 👎 0 button 💡 Hint: Mention @runllm in the thread for followups.
t
@RunLLM What is the broker configuration field
preciseDispatcherFlowControl
used for?
r
The
preciseDispatcherFlowControl
broker configuration enables precise control over message dispatch throttling in Pulsar. When set to true, the broker calculates the number of entries to read from BookKeeper based on the average number of messages per entry, resulting in more accurate rate limiting, especially with batch messages. Only one of
preciseDispatcherFlowControl
or
dispatchThrottlingOnBatchMessageEnabled
should be enabled at a time, as they are mutually exclusive. This setting helps prevent over-delivery and unnecessary reads from storage[^1][^2]. Would you like more detail on its configuration or use cases? Sources: - Pulsar Docs: Throttling Configurations - GitHub PR: Make dispatch rate limiter more precise 👍 0 button 👎 0 button 💡 Hint: Mention @runllm in the thread for followups.
l
preciseTopicPublishRateLimiterEnable
is unused since Pulsar 3.2 where the rate limiting was refactored.
t
Thanks for the heads up!
l
more details about the rate limiting refactoring in https://github.com/apache/pulsar/blob/master/pip/pip-322.md
👀 1
👍 1