Rymote.Synapse.Cluster.Redis
1.0.0
dotnet add package Rymote.Synapse.Cluster.Redis --version 1.0.0
NuGet\Install-Package Rymote.Synapse.Cluster.Redis -Version 1.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Rymote.Synapse.Cluster.Redis" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Rymote.Synapse.Cluster.Redis" Version="1.0.0" />
<PackageReference Include="Rymote.Synapse.Cluster.Redis" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Rymote.Synapse.Cluster.Redis --version 1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Rymote.Synapse.Cluster.Redis, 1.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Rymote.Synapse.Cluster.Redis@1.0.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Rymote.Synapse.Cluster.Redis&version=1.0.0
#tool nuget:?package=Rymote.Synapse.Cluster.Redis&version=1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Rymote.Synapse.Cluster.Redis
Redis-backed IMembershipProvider for Rymote.Synapse.Cluster.
What it does
- Each node writes a Redis hash entry (
synapse:{cluster}:members:{guid}) with its endpoint, heartbeat timestamp, and active subscriptions. - A background heartbeat loop refreshes the TTL (default 15 s) every 5 s, ensuring stale nodes expire automatically.
- Nodes publish join / leave / subscription-change events on a Redis pub/sub channel (
synapse:{cluster}:membership-events) so peers receive real-time membership updates viaIMembershipProvider.Changes. - On graceful shutdown, the node deletes its own hash key and publishes a leave event before disposing the connection.
- The
Memberscollection is lazily populated by scanningsynapse:{cluster}:members:*keys with a 1-second in-memory cache so hot-path reads don't hammer Redis.
What it doesn't do
- Does not perform active health-checking of peers; peer liveness is inferred from Redis TTL expiry.
- Does not support clustered or Sentinel Redis configurations out of the box — any standard StackExchange.Redis
ConfigurationOptionsconnection string works, but you must configure it yourself.
Quickstart
services.AddSynapse()
.UseTcpTransport(...)
.UseRedisMembership(membership =>
{
membership.ConfigurationString = "localhost:6379";
membership.ClusterName = "production";
membership.SelfIdentity = NodeIdentity.NewIdentity();
membership.SelfEndPoint = new IPEndPoint(IPAddress.Loopback, 8443);
})
.UseCluster();
AbortOnConnectFail is forced to false so the bus starts up even when Redis is temporarily unavailable at launch.
| 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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.0)
- Rymote.Synapse.Abstractions (>= 1.0.0)
- Rymote.Synapse.Cluster (>= 1.0.0)
- StackExchange.Redis (>= 2.8.0)
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 |
|---|---|---|
| 1.0.0 | 91 | 5/18/2026 |