pub struct SentinelClient { /* private fields */ }
Expand description

An alternative to the Client type which creates connections from clients created on-demand based on information fetched from the sentinels. Uses the Sentinel type internally. This is basic an utility to help make it easier to use sentinels but with an interface similar to the client (get_connection and get_async_connection). The type of server (master or replica) and name of the desired master are specified when constructing an instance, so it will always return connections to the same target (for example, always to the master with name “mymaster123”, or always to replicas of the master “another-master-abc”).

Implementations§

source§

impl SentinelClient

source

pub fn build<T: IntoConnectionInfo>( params: Vec<T>, service_name: String, node_connection_info: Option<SentinelNodeConnectionInfo>, server_type: SentinelServerType ) -> RedisResult<Self>

Creates a SentinelClient performing some basic checks on the URLs that might result in an error.

source

pub fn get_connection(&mut self) -> RedisResult<Connection>

Creates a new connection to the desired type of server (based on the service/master name, and the server type). We use a Sentinel to create a client for the target type of server, and then create a connection using that client.

source§

impl SentinelClient

To enable async support you need to chose one of the supported runtimes and active its corresponding feature: tokio-comp or async-std-comp

source

pub async fn get_async_connection(&mut self) -> RedisResult<AsyncConnection>

Available on crate feature aio only.

Returns an async connection from the client, using the same logic from SentinelClient::get_connection.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

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

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more