Namespace StackExchange.Redis
Classes
- ClientInfo
Represents the state of an individual client connection to redis
- ClusterConfiguration
Describes the state of the cluster as reported by a single node
- ClusterNode
Represents the configuration of a single node in a cluster configuration
- CommandMap
Represents the commands mapped on a particular configuration
- CommandTrace
Represents the information known about long-running commands
- Condition
Describes a pre-condition used in a redis transaction
- ConditionResult
Indicates the status of a condition as part of a transaction
- ConfigurationOptions
The options relevant to a set of redis connections
- ConnectionCounters
Illustrates the counters associated with an individual connection
- ConnectionFailedEventArgs
Contains information about a server connection failure
- ConnectionMultiplexer
Represents an inter-related group of connections to redis servers
- ConvertHelper
Helper for Array.ConvertAll() as it's missing on .Net Core.
- EndPointCollection
A list of endpoints
- EndPointEventArgs
Event information related to redis endpoints
- ExponentialRetry
Represents a retry policy that performs retries, using a randomized exponential back off scheme to determine the interval between retries.
- ExtensionMethods
Utility methods
- HashSlotMovedEventArgs
Contains information about individual hash-slot relocations
- InternalErrorEventArgs
Describes internal errors (mainly intended for debugging)
- LinearRetry
Represents a retry policy that performs retries at a fixed interval. The retries are performed upto a maximum allowed time.
- LoadedLuaScript
Represents a Lua script that can be executed on Redis.
Unlike LuaScript, LoadedLuaScript sends the hash of it's ExecutableScript to Redis rather than pass the whole script on each call. This requires that the script be loaded into Redis before it is used.
To create a LoadedLuaScript first create a LuaScript via LuaScript.Prepare(string), then call Load(IServer, CommandFlags) on the returned LuaScript.
Unlike normal Redis Lua scripts, LoadedLuaScript can have named parameters (prefixed by a @). Public fields and properties of the passed in object are treated as parameters.
Parameters of type RedisKey are sent to Redis as KEY (http://redis.io/commands/eval) in addition to arguments, so as to play nicely with Redis Cluster.
All members of this class are thread safe.
- LuaScript
Represents a Lua script that can be executed on Redis.
Unlike normal Redis Lua scripts, LuaScript can have named parameters (prefixed by a @). Public fields and properties of the passed in object are treated as parameters.
Parameters of type RedisKey are sent to Redis as KEY (http://redis.io/commands/eval) in addition to arguments, so as to play nicely with Redis Cluster.
All members of this class are thread safe.
- RedisCommandException
Indicates that a command was illegal and was not sent to the server
- RedisConnectionException
Indicates a connection fault when communicating with redis
- RedisErrorEventArgs
Notification of errors from the redis server
- RedisException
Indicates an issue communicating with redis
- RedisResult
Represents a general-purpose result from redis, that may be cast into various anticipated types
- RedisServerException
Indicates an exception raised by a redis server
- RedisTimeoutException
Indicates the time allotted for a command or operation has expired.
- ServerCounters
Illustrates the queues associates with this server
- SocketManager
A SocketManager monitors multiple sockets for availability of data; this is done using the Socket.Select API and a dedicated reader-thread, which allows for fast responses even when the system is under ambient load.
Structs
- GeoEntry
Describes a GeoEntry element with the corresponding value GeoEntries are stored in redis as SortedSetEntries
- GeoPosition
Describes the longitude and latitude of a GeoEntry
- GeoRadiusResult
The result of a GeoRadius command.
- HashEntry
Describes a hash-field (a name/value pair)
- ProfiledCommandEnumerable
A collection of IProfiledCommands.
This is a very light weight data structure, only supporting enumeration.
While it implements IEnumerable, it there are fewer allocations if one uses it's explicit GetEnumerator() method. Using
foreach
does this automatically.This type is not threadsafe.
- ProfiledCommandEnumerable.Enumerator
Implements IEnumerator for ProfiledCommandEnumerable. This implementation is comparable to List.Enumerator and Dictionary.Enumerator, and is provided to reduce allocations in the common (ie. foreach) case.
This type is not threadsafe.
- RedisChannel
Represents a pub/sub channel name
- RedisFeatures
Provides basic information about the features available on a particular version of Redis
- RedisKey
Represents a key that can be stored in redis
- RedisValue
Represents values that can be stored in redis
- RedisValueWithExpiry
Describes a value/expiry pair
- SlotRange
Indicates a range of slots served by a cluster node
- SortedSetEntry
Describes a sorted-set element with the corresponding value
Interfaces
- IBatch
Represents a block of operations that will be sent to the server together; this can be useful to reduce packet fragmentation on slow connections - it can improve the time to get all the operations processed, with the trade-off of a slower time to get the first operation processed; this is usually a good thing. Unless this batch is a transaction, there is no guarantee that these operations will be processed either contiguously or atomically by the server.
- IConnectionMultiplexer
Represents the abstract multiplexer API
- IDatabase
Describes functionality that is common to both standalone redis servers and redis clusters
- IDatabaseAsync
Describes functionality that is common to both standalone redis servers and redis clusters
- IProfiledCommand
A profiled command against a redis instance.
TimeSpans returned by this interface use a high precision timer if possible. DateTimes returned by this interface are no more precise than DateTime.UtcNow.
- IProfiler
Interface for profiling individual commands against an Redis ConnectionMulitplexer.
- IReconnectRetryPolicy
Describes retry policy functionality that can be provided to the multiplexer to be used for connection reconnects
- IRedis
Common operations available to all redis connections
- IRedisAsync
Common operations available to all redis connections
- IScanningCursor
Represents a resumable, cursor-based scanning operation
- IServer
Provides configuration controls of a redis server
- ISubscriber
A redis connection used as the subscriber in a pub/sub scenario
- ITransaction
Represents a group of operations that will be sent to the server as a single unit, and processed on the server as a single unit. Transactions can also include constraints (implemented via WATCH), but note that constraint checking involves will (very briefly) block the connection, since the transaction cannot be correctly committed (EXEC), aborted (DISCARD) or not applied in the first place (UNWATCH) until the responses from the constraint checks have arrived.
Enums
- Aggregate
Specifies how elements should be aggregated when combining sorted sets
- ClientFlags
The client flags can be a combination of: O: the client is a slave in MONITOR mode S: the client is a normal slave server M: the client is a master x: the client is in a MULTI/EXEC context b: the client is waiting in a blocking operation i: the client is waiting for a VM I/O (deprecated) d: a watched keys has been modified - EXEC will fail c: connection to be closed after writing entire reply u: the client is unblocked A: connection to be closed ASAP N: no specific flag set
- ClientType
The class of the connection
- CommandFlags
Behaviour markers associated with a given command
- CommandStatus
track status of a command while communicating with Redis
- CompletionType
Completion type for CompletionTypeHelper
- ConnectionFailureType
The known types of connection failure
- ConnectionType
The type of a connection
- Exclude
When performing a range query, by default the start / stop limits are inclusive; however, both can also be specified separately as exclusive
- ExportOptions
Which settings to export
- GeoRadiusOptions
GeoRadius command options.
- GeoUnit
Units associated with Geo Commands
- MigrateOptions
Additional options for the MIGRATE command
- Order
The direction in which to sequence elements
- Proxy
Specifies the proxy that is being used to communicate to redis
- RedisChannel.PatternMode
The matching pattern for this channel
- RedisType
The intrinsinc data-types supported by redis
- ReplicationChangeOptions
Additional operations to perform when making a server a master
- RetransmissionReasonType
If an IProfiledCommand is a retransmission of a previous command, this enum is used to indicate what prompted the retransmission.
This can be used to distinguish between transient causes (moving hashslots, joining nodes, etc.) and incorrect routing.
- SaveType
The type of save operation to perform
- ServerType
Indicates the flavor of a particular redis server
- SetOperation
Describes an algebraic set operation that can be performed to combine multiple sets
- ShutdownMode
Defines the persistence behaviour of the server during shutdown
- SortType
Specifies how to compare elements for sorting
- When
Indicates when this operation should be performed (only some variations are legal in a given context)