pub struct DefaultLitePullConsumerBuilder { /* private fields */ }Expand description
Builder for creating a DefaultLitePullConsumer with customized configuration.
§Examples
use rocketmq_client::consumer::default_lite_pull_consumer::DefaultLitePullConsumer;
let consumer = DefaultLitePullConsumer::builder()
.consumer_group("my_consumer_group")
.name_server_addr("127.0.0.1:9876")
.pull_batch_size(32)
.auto_commit(true)
.build();Implementations§
Source§impl DefaultLitePullConsumerBuilder
impl DefaultLitePullConsumerBuilder
Sourcepub fn name_server_addr(self, addr: impl Into<CheetahString>) -> Self
pub fn name_server_addr(self, addr: impl Into<CheetahString>) -> Self
Sourcepub fn consumer_group(self, group: impl Into<CheetahString>) -> Self
pub fn consumer_group(self, group: impl Into<CheetahString>) -> Self
Sourcepub fn client_ip(self, ip: impl Into<CheetahString>) -> Self
pub fn client_ip(self, ip: impl Into<CheetahString>) -> Self
Sets the client IP address (optional, auto-detected by default).
Sourcepub fn instance_name(self, name: impl Into<CheetahString>) -> Self
pub fn instance_name(self, name: impl Into<CheetahString>) -> Self
Sets the instance name (optional, auto-generated by default).
Sourcepub fn namespace(self, namespace: impl Into<CheetahString>) -> Self
pub fn namespace(self, namespace: impl Into<CheetahString>) -> Self
Sets the namespace (optional).
Sourcepub fn message_model(self, model: MessageModel) -> Self
pub fn message_model(self, model: MessageModel) -> Self
Sets the message model (default: Clustering).
Sourcepub fn consume_from_where(self, consume_from: ConsumeFromWhere) -> Self
pub fn consume_from_where(self, consume_from: ConsumeFromWhere) -> Self
Sets where to start consuming from when no offset exists (default: LastOffset).
Sourcepub fn consume_timestamp(self, timestamp: impl Into<CheetahString>) -> Self
pub fn consume_timestamp(self, timestamp: impl Into<CheetahString>) -> Self
Sets the timestamp to consume from (for CONSUME_FROM_TIMESTAMP mode).
Sourcepub fn allocate_message_queue_strategy(
self,
strategy: Arc<dyn AllocateMessageQueueStrategy + Send + Sync>,
) -> Self
pub fn allocate_message_queue_strategy( self, strategy: Arc<dyn AllocateMessageQueueStrategy + Send + Sync>, ) -> Self
Sets the message queue allocation strategy.
Sourcepub fn pull_batch_size(self, size: i32) -> Self
pub fn pull_batch_size(self, size: i32) -> Self
Sets the number of messages to pull in a single request (default: 10, range: 1-1024).
Sourcepub fn pull_thread_nums(self, nums: usize) -> Self
pub fn pull_thread_nums(self, nums: usize) -> Self
Sets the number of concurrent pull threads (default: 20).
Sourcepub fn pull_threshold_for_queue(self, threshold: i64) -> Self
pub fn pull_threshold_for_queue(self, threshold: i64) -> Self
Sets the maximum number of messages cached per queue (default: 1000).
Sourcepub fn pull_threshold_size_for_queue(self, threshold: i32) -> Self
pub fn pull_threshold_size_for_queue(self, threshold: i32) -> Self
Sets the maximum size in MiB of messages cached per queue (default: 100).
Sourcepub fn pull_threshold_for_all(self, threshold: i64) -> Self
pub fn pull_threshold_for_all(self, threshold: i64) -> Self
Sets the maximum total number of cached messages across all queues (default: -1 for unlimited).
Sourcepub fn consume_max_span(self, span: i64) -> Self
pub fn consume_max_span(self, span: i64) -> Self
Sets the maximum offset span allowed in a process queue (default: 2000).
Sourcepub fn pull_time_delay_millis_when_exception(self, delay: u64) -> Self
pub fn pull_time_delay_millis_when_exception(self, delay: u64) -> Self
Sets the delay when pull encounters an exception (default: 1000ms).
Sourcepub fn pull_time_delay_millis_when_cache_flow_control(self, delay: u64) -> Self
pub fn pull_time_delay_millis_when_cache_flow_control(self, delay: u64) -> Self
Sets the delay when cache flow control is triggered (default: 50ms).
Sourcepub fn pull_time_delay_millis_when_broker_flow_control(self, delay: u64) -> Self
pub fn pull_time_delay_millis_when_broker_flow_control(self, delay: u64) -> Self
Sets the delay when broker flow control is triggered (default: 20ms).
Sourcepub fn poll_timeout_millis(self, timeout: u64) -> Self
pub fn poll_timeout_millis(self, timeout: u64) -> Self
Sets the default poll timeout in milliseconds (default: 5000).
Sourcepub fn auto_commit(self, enable: bool) -> Self
pub fn auto_commit(self, enable: bool) -> Self
Sets whether to automatically commit offsets (default: true).
Sourcepub fn auto_commit_interval_millis(self, interval: u64) -> Self
pub fn auto_commit_interval_millis(self, interval: u64) -> Self
Sets the interval between automatic offset commits (default: 5000ms, minimum: 1000ms).
Sourcepub fn topic_metadata_check_interval_millis(self, interval: u64) -> Self
pub fn topic_metadata_check_interval_millis(self, interval: u64) -> Self
Sets the interval for checking topic metadata changes (default: 10000ms).
Sourcepub fn message_request_mode(self, mode: MessageRequestMode) -> Self
pub fn message_request_mode(self, mode: MessageRequestMode) -> Self
Sets the message request mode (default: Pull).
Sourcepub fn rpc_hook(self, hook: Arc<dyn RPCHook>) -> Self
pub fn rpc_hook(self, hook: Arc<dyn RPCHook>) -> Self
Sets the RPC hook for request/response interception.
Sourcepub fn enable_msg_trace(self) -> Self
pub fn enable_msg_trace(self) -> Self
Enables message trace with the default trace topic.
Sourcepub fn enable_msg_trace_with_topic(
self,
trace_topic: impl Into<CheetahString>,
) -> Self
pub fn enable_msg_trace_with_topic( self, trace_topic: impl Into<CheetahString>, ) -> Self
Enables message trace with a custom trace topic.
Sourcepub fn trace_dispatcher(
self,
dispatcher: Arc<dyn TraceDispatcher + Send + Sync>,
) -> Self
pub fn trace_dispatcher( self, dispatcher: Arc<dyn TraceDispatcher + Send + Sync>, ) -> Self
Sets a custom trace dispatcher.
Sourcepub fn build(self) -> DefaultLitePullConsumer
pub fn build(self) -> DefaultLitePullConsumer
Builds the DefaultLitePullConsumer.
§Panics
Panics if required fields (consumer_group, name_server_addr) are not set.
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for DefaultLitePullConsumerBuilder
impl !RefUnwindSafe for DefaultLitePullConsumerBuilder
impl Send for DefaultLitePullConsumerBuilder
impl Sync for DefaultLitePullConsumerBuilder
impl Unpin for DefaultLitePullConsumerBuilder
impl UnsafeUnpin for DefaultLitePullConsumerBuilder
impl !UnwindSafe for DefaultLitePullConsumerBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.