#[non_exhaustive]pub struct RedisPool { /* private fields */ }Expand description
Shared Redis connection pool.
Wraps a MultiplexedConnection which internally multiplexes
multiple concurrent requests over a single TCP connection.
Data is isolated by app_id: every Redis key is prefixed with
rustvello:{app_id}:, so two pools created with different app_id
values against the same Redis server will not see each other’s data.
Implementations§
Source§impl RedisPool
impl RedisPool
Sourcepub fn new(uri: &str, app_id: &str) -> RustvelloResult<Self>
pub fn new(uri: &str, app_id: &str) -> RustvelloResult<Self>
Create a new pool from a Redis URI (e.g. redis://127.0.0.1/).
The app_id is used to namespace every key as rustvello:{app_id}:….
Sourcepub async fn conn(&self) -> RustvelloResult<MultiplexedConnection>
pub async fn conn(&self) -> RustvelloResult<MultiplexedConnection>
Get or create a multiplexed connection.
Trait Implementations§
Auto Trait Implementations§
impl !Freeze for RedisPool
impl !RefUnwindSafe for RedisPool
impl Send for RedisPool
impl Sync for RedisPool
impl Unpin for RedisPool
impl UnsafeUnpin for RedisPool
impl !UnwindSafe for RedisPool
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
Mutably borrows from an owned value. Read more
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more