pub struct Config {
Show 16 fields pub durable_name: Option<String>, pub description: Option<String>, pub deliver_policy: DeliverPolicy, pub ack_policy: AckPolicy, pub ack_wait: Duration, pub max_deliver: i64, pub filter_subject: String, pub replay_policy: ReplayPolicy, pub rate_limit: u64, pub sample_frequency: u8, pub max_waiting: i64, pub max_ack_pending: i64, pub headers_only: bool, pub max_batch: i64, pub max_expires: Duration, pub inactive_threshold: Duration,
}

Fields

durable_name: Option<String>

Setting durable_name to Some(...) will cause this consumer to be “durable”. This may be a good choice for workloads that benefit from the JetStream server or cluster remembering the progress of consumers for fault tolerance purposes. If a consumer crashes, the JetStream server or cluster will remember which messages the consumer acknowledged. When the consumer recovers, this information will allow the consumer to resume processing where it left off. If you’re unsure, set this to Some(...).

Setting durable_name to None will cause this consumer to be “ephemeral”. This may be a good choice for workloads where you don’t need the JetStream server to remember the consumer’s progress in the case of a crash, such as certain “high churn” workloads or workloads where a crashed instance is not required to recover.

description: Option<String>

A short description of the purpose of this consumer.

deliver_policy: DeliverPolicy

Allows for a variety of options that determine how this consumer will receive messages

ack_policy: AckPolicy

How messages should be acknowledged

ack_wait: Duration

How long to allow messages to remain un-acknowledged before attempting redelivery

max_deliver: i64

Maximum number of times a specific message will be delivered. Use this to avoid poison pill messages that repeatedly crash your consumer processes forever.

filter_subject: String

When consuming from a Stream with many subjects, or wildcards, this selects only specific incoming subjects. Supports wildcards.

replay_policy: ReplayPolicy

Whether messages are sent as quickly as possible or at the rate of receipt

rate_limit: u64

The rate of message delivery in bits per second

sample_frequency: u8

What percentage of acknowledgements should be samples for observability, 0-100

max_waiting: i64

The maximum number of waiting consumers.

max_ack_pending: i64

The maximum number of unacknowledged messages that may be in-flight before pausing sending additional messages to this consumer.

headers_only: bool

Only deliver headers without payloads.

max_batch: i64

Maximum size of a request batch

max_expires: Duration

Maximum value for request exiration

inactive_threshold: Duration

Threshold for ephemeral consumer intactivity

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Deserialize this value from the given Serde deserializer. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.