Skip to content

OrleansContrib/Orleans.StorageProvider.Redis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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

 
 
 

Contributors

Languages