Ananke.Redis
0.8.6
dotnet add package Ananke.Redis --version 0.8.6
NuGet\Install-Package Ananke.Redis -Version 0.8.6
<PackageReference Include="Ananke.Redis" Version="0.8.6" />
<PackageVersion Include="Ananke.Redis" Version="0.8.6" />
<PackageReference Include="Ananke.Redis" />
paket add Ananke.Redis --version 0.8.6
#r "nuget: Ananke.Redis, 0.8.6"
#:package Ananke.Redis@0.8.6
#addin nuget:?package=Ananke.Redis&version=0.8.6
#tool nuget:?package=Ananke.Redis&version=0.8.6
Ananke.Redis
Redis infrastructure for Ananke — IDistributedLock via RedLock.net and IKeyValueDataAdapter via StackExchange.Redis.
Install
dotnet add package Ananke.Redis
Quick start
using Ananke.Redis;
services.AddStateMachine();
services.AddRedis(c =>
{
c.Host = "localhost";
c.Port = 6379;
c.Password = "secret";
c.LockExpirySeconds = 30;
});
Or with simple parameters:
services.AddRedis("localhost", port: 6379, password: "secret");
Call order with AddStateMachine() doesn't matter — AddRedis replaces the in-memory fallback automatically.
What it registers
| Service | Implementation |
|---|---|
IDistributedLock |
RedisDistributedLock (RedLock.net) |
IKeyValueDataAdapter |
RedisDistributedLock (StackExchange.Redis) |
Both interfaces are backed by the same singleton, which manages the Redis connection and RedLock factory.
Features
- Distributed locking — RedLock algorithm for safe multi-instance coordination
- Key-value storage — JSON serialized get/set/remove/exists via StackExchange.Redis
- Conversation memory —
RedisConversationMemoryfor persistent chat history - DI-friendly — constructed from
IOptions<CacheConfig>; connects lazily on first use - Replaces in-memory — automatically overrides the default
InMemoryDistributedLock
ICheckpointStore — manual wiring
RedisCheckpointStore is a Redis-backed ICheckpointStore (JSON-serialized checkpoints,
native EXPIREAT TTL). Unlike RedisDistributedLock/RedisDataAdapter, it is not
registered automatically by AddRedis(...) — it takes a ConnectionMultiplexer directly
and must be registered separately:
services.AddSingleton<ICheckpointStore>(sp =>
new RedisCheckpointStore(ConnectionMultiplexer.Connect("localhost:6379")));
Documentation
Full docs, demos, and architecture: github.com/sevensamurai/Ananke
License
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Ananke.Abstractions (>= 0.8.6)
- Ananke.Orchestration (>= 0.8.6)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.9)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.9)
- Microsoft.Extensions.Options (>= 10.0.9)
- RedLock.net (>= 2.3.2)
- StackExchange.Redis (>= 2.13.17)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.8.6 | 109 | 6/22/2026 |
| 0.8.5 | 109 | 6/15/2026 |
| 0.8.4 | 104 | 5/29/2026 |
| 0.8.3 | 103 | 5/17/2026 |
| 0.8.2 | 99 | 5/15/2026 |
| 0.8.1 | 104 | 5/9/2026 |
| 0.8.0 | 107 | 5/9/2026 |
| 0.7.2 | 115 | 4/12/2026 |
| 0.7.1 | 105 | 4/11/2026 |
| 0.7.0 | 112 | 4/11/2026 |
| 0.6.0 | 109 | 4/10/2026 |
| 0.5.0 | 118 | 4/5/2026 |
| 0.4.0 | 111 | 4/3/2026 |
| 0.3.0 | 121 | 3/15/2026 |
| 0.2.0 | 112 | 3/6/2026 |
| 0.1.0 | 114 | 3/3/2026 |