Table of Contents

Aurelius.Tenancy.Provisioning Namespace

Classes

Name Description
TCallbackShard​Allocator IShardAllocator that delegates the choice to a TShardAllocatorFunc anonymous function.
TFixedShardAllocator IShardAllocator that always allocates the same shard.
TRoundRobinShard​Allocator IShardAllocator that cycles through the active shards in shard id order.
TShardPerTenant​Allocator IShardAllocator that gives every tenant a dedicated shard, using the tenant id as the shard id (​database-​per-​tenant topology).
TTenantProvisioner Idempotent tenant lifecycle operations over an ITenantCatalog: create a tenant (with pluggable shard allocation), change its status, move it to another shard.
TWeightedHash​Shard​Allocator IShardAllocator that allocates deterministically by hashing the tenant id over the active shards, weighted by their TShardInfo.Weight.

Interfaces

Name Description
IShardAllocator Chooses the shard for a new tenant.

Anonymous methods

Name Description
TProvisionShardProc Callback invoked when a tenant is provisioned into a shard that has no catalog record yet.
TProvisionTenantProc Callback invoked while a tenant is being provisioned.
TShardAllocatorFunc Anonymous function that chooses the shard for a new tenant.