Snowflake.Redis.CSharp

Twitter的雪花算法SnowFlake,使用csharp语言实现。


Keywords
csharp, distributed, kubernetes, redis, snowflake, snowflake-algorithm, twitter, unique-id
License
Apache-2.0
Install
Install-Package Snowflake.Redis.CSharp -Version 1.3.0

Documentation

An ID Generator for C# based on Snowflake Algorithm (Twitter announced).

nuget NETCore stats LICENSE FOSSA

Description

Language: English | 中文

Twitter's SnowFlake algorithm is implemented using C# language.

Installation

PM> Install-Package Snowflake.CSharp

Useage

  1. Specify the data center ID and machine ID.
SnowFlake snowFlake = new SnowFlake(datacenterId:1,machineId:1);
  1. Generate Id.
var id = snowFlake.NextId();

Advanced

Support Kubernetes HorizontalPodAutoscaler.

  1. Used in distributed.
PM> Install-Package Snowflake.Redis.CSharp
  1. Add the following code at ConfigureServices() method.
public void ConfigureServices(IServiceCollection services)
{
  services.AddSnowflakeRedisService(connectionString:"127.0.0.1:6379,allowAdmin=true", 
      option 
            =>Configuration.GetSection("snowFlake").Bind(option)
     );
}

Distributed snowflake ID automated configuration of different machine ids.

"snowFlake": {
  "dataCenterId": 1,
  "Name": "test"
} 

License

Apache