Crate reool[−][src]
Expand description
Reool
About
Reool is a REdis connection pOOL based on redis-rs.
Reool is aimed at either connecting to a single primary node or connecting to a replica set using the replicas as read only nodes.
Currently Reool is a fixed size connection pool. Reool provides an interface for instrumentation.
You should also consider multiplexing instead of a pool based upon your needs.
The ConnectionLike
trait
Both PooledConnection
and RedisPool
implement the ConnectionLike
interface of redis-rs for easy integration.
ConnectionLike::get_db
should be handled with care since the pool will always return
-1. Currently connections from the pool will also do so if the connection was teriminated
by an IO error. So ConnectionLike::get_db
so always handled with care.
Documentation
For documentation visit crates.io.
License
Reool is distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE and LICENSE-MIT for details. License: Apache-2.0/MIT
Re-exports
Modules
Configuration for RedisPool
including a builder.
Building blocks for creating a ConnectionFactory
Pluggable instrumentation
Structs
Represents redis commands.
Simply a shortcut for CheckoutMode::Immediately
The result of a ping. Can either be a success or a failure.
A connection that has been taken from the pool.
Simply a shortcut for CheckoutMode::PoolDefault
The current state of the pool
Represents a redis error. For the most part you should be using the Error trait to interact with this rather than the actual struct.
A pool to one or more Redis instances.
A timeout which can also be seen as a deadline
Simply a shortcut for CheckoutMode::Wait
Enums
Various options on retrieving a connection
Helper enum that is used in some situations to describe the behavior of arguments in a numeric context.
Indicates whether a ping was a success or a failure
Internal low-level redis value enum.
Traits
Implements common redis commands over asynchronous connections. This allows you to send commands straight to a connection or client.
An async abstraction over connections.
This trait is used to convert a redis value into a more appropriate
type. While a redis Value
can represent any response that comes
back from the redis server, usually you want to map this into something
that works better in rust. For instance you might want to convert the
return value into a String
or an integer.
Something that can be put into the connection pool
A helper trait to easily execute common
asynchronous Redis operations on a
redis::aio::ConnectionLike
Used to convert a value into one or multiple redis argument strings. Most values will produce exactly one item but in some cases it might make sense to produce more than one.
Functions
Shortcut function to creating a command with a single argument.
Type Definitions
Library generic future type.