Skip to content

A Redis implementation of the Orleans Storage Provider model. Uses the Azure Redis Cache to persist grain states.

Notifications You must be signed in to change notification settings

OrleansContrib/Orleans.StorageProvider.Redis

Repository files navigation

Orleans.Redis

Orleans Redis Providers

1.5.x branch Build status 2.x.x branch Build status

Orleans is a framework that provides a straight-forward approach to building distributed high-scale computing applications, without the need to learn and apply complex concurrency or other scaling patterns.

Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker.

Orleans.Redis is a package that use Redis as a backend for Orleans providers. It uses the great StackExchange.Redis library underneath.

Installation

PS> Install-Package Orleans.Persistence.Redis -prerelease

Usage

Configure your Orleans-cluster.

var silo = new SiloHostBuilder()
    .AddRedisGrainStorage("Redis", optionsBuilder => optionsBuilder.Configure(options =>
    {
        options.DataConnectionString = "localhost:6379"; // This is the deafult
        options.UseJson = true;
        options.DatabaseNumber = 1;
    }))
    .Build();
await silo.StartAsync();

Decorate your grain classes with the StorageProvider attribute.

[StorageProvider(ProviderName = "Redis")]
public class SomeGrain : Grain<SomeGrainState>, ISomeGrain

These settings will enable the redis cache to act as the store for grains that have

  • State
  • Need to persist their state

Configuration

  • DataConnectionString="..." (required) the connection string to your redis database (i.e. localhost:6379, is passed directly to StackExchange.Redis)
  • UseJson=true/false (optional) wether or not to persist state as a JSON string or not. Defaults to false
  • DatabaseNumber=1 (optional) the number of the redis database to connect to. Defaults

License

MIT

About

A Redis implementation of the Orleans Storage Provider model. Uses the Azure Redis Cache to persist grain states.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages