goSnowFlake

package
v0.0.0-...-37fef2a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 27, 2019 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CEpoch          = 1546272000000 // Start timestamp 2019-01-01 00:00:00
	CWorkerIdBits   = 5             // Num of WorkerId Bits
	CDataCenterBits = 5             // Num of DataCentId Bits
	CSequenceBits   = 12            // Num of Sequence Bits

	CWorkerIdShift   = CSequenceBits
	CDataCenterShift = CWorkerIdShift + CWorkerIdBits
	CTimeStampShift  = CDataCenterShift + CDataCenterBits

	CMaxWorker     = -1 ^ (-1 << CWorkerIdBits)
	CMaxDataCenter = -1 ^ (-1 << CDataCenterBits)
	CSequenceMask  = -1 ^ (-1 << CSequenceBits)
)

Variables

This section is empty.

Functions

func ParseId

func ParseId(id int64) (t time.Time, ts int64, dataCenterId int64, workerId int64, seq int64)

ParseId Func: reverse uuid to timestamp, dataCenterId, workId, seq

Types

type IdWorker

type IdWorker struct {
	// contains filtered or unexported fields
}

IdWorker struct

func NewIdWorker

func NewIdWorker(workerId_, twEpoch int64) (iw *IdWorker, err error)

NewIdWorker Func: Generate NewIdWorker with Given workerId

func NewIdWorkerEx

func NewIdWorkerEx(dataCenterId int64, workerId int64, twepoch int64) (iw *IdWorker, err error)

NewIdWorker Func: Generate NewIdWorker with Given workerId

func (*IdWorker) NextId

func (iw *IdWorker) NextId() (ts int64, err error)

NewId Func: Generate next id

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL