Skip to content

pravj/engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Engine

Distributed identifier generation service

Components

  • Engine
  • Supplier
  • Controller
  • Generator

Engine

  • Tornado powered web-server which returns next set of IDs to fetch and current system stats

Supplier

  • Keeps an eye on the storage system using distributed locking
  • Returns state of the system and storage
  • Collect perpared set of IDs from storage and pass it to 'Engine' on demand
  • Invokes 'controller' when 'master' storage is in 'caution' state

Controller

  • Shift main system storage between 'master' and 'slave'
  • Insert data from 'generator' into 'slave' storage on demand

Generator

  • Generate non-sequential identifiers of fixed-length
  • Uses a little Group Theory and properties of Anagrams

Storage

  • RethinkDB

Releases

No releases published

Packages

No packages published