Sonyflake is a distributed unique ID generator inspired by Twitter's Snowflake.
This is a python rewrite of the original sony/sonyflake project, written in Go.
A Sonyflake ID is composed of
39 bits for time in units of 10 msec
8 bits for a sequence number
16 bits for a machine id
pip install sonyflake-pyfrom sonyflake import SonyFlake
sf = SonyFlake()
next_id = sf.next_id()
print(next_id)The generator can be configured with variety of options, such as
custom machine_id, start_time etc.
start_timeshould be an instance ofdatetime.datetime.machine_idshould be an integer value upto 16-bits, callable orNone(will be used random machine id).
The MIT License (MIT).