雪花算法(snowflake)delphi版

2022-10-17,,,

雪花算法简单描述:
+ 最高位是符号位,始终为0,不可用。
+ 41位的时间序列,精确到毫秒级,41位的长度可以使用69年。时间位还有一个很重要的作用是可以根据时间进行排序。
+ 10位的机器标识,10位的长度最多支持部署1024个节点。
+ 12位的计数序列号,序列号即一系列的自增id,可以支持同一节点同一毫秒生成多个ID序号,12位的计数序列号支持每个节点每毫秒产生4096个ID序号。
看的出来,这个算法很简洁也很简单,但依旧是一个很好的ID生成策略。其中,10位器标识符一般是5位IDC+5位machine编号,唯一确定一台机器。
aaarticlea/png;base64,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" alt="" data-filename="image.png" />
delphi版本是不得闲折腾的,QQ75492895,我这算是转载,源码如下:

(*
Delphi版雪花算法
作者:不得闲 QQ:75492895
用于生成Int64位的唯一值ID,WorkerID用于区分工作站,
ID会随着时间增加位数,每毫秒可生成4096个ID 用法:
创建全局变量:snow: TDxSnowflake;
创建对象:snow := TDxSnowflake.Create; // 不要忘了在退出时释放snow.Free;
调用:
snow.WorkerID:=100;
mmo1.Lines.Add( FormatFloat('#0',snow.Generate));
*)
unit DxSnowflake; interface uses System.SysUtils, System.SyncObjs, System.Generics.Collections,
System.DateUtils; type
TWorkerID = .. ; TDxSnowflake = class
private
FWorkerID: TWorkerID;
FLocker: TCriticalSection;
fTime: Int64;
fstep: Int64;
public
constructor Create;
destructor Destroy; override;
property WorkerID: TWorkerID read FWorkerID write FWorkerID;
function Generate: Int64;
end; implementation const
Epoch: Int64 = ; // 北京时间2018-10-15号
// 工作站的节点位数
WorkerNodeBits: Byte = ;
// 序列号的节点数
StepBits: Byte = ;
timeShift: Byte = ;
nodeShift: Byte = ; var
WorkerNodeMax: Int64;
nodeMask: Int64; stepMask: Int64; procedure InitNodeInfo;
begin
WorkerNodeMax := - xor (- shl WorkerNodeBits);
nodeMask := WorkerNodeMax shl StepBits;
stepMask := - xor (- shl StepBits);
end;
{ TDxSnowflake } constructor TDxSnowflake.Create;
begin
FLocker := TCriticalSection.Create;
end; destructor TDxSnowflake.Destroy;
begin
FLocker.Free;
inherited;
end; function TDxSnowflake.Generate: Int64;
var
curtime: Int64;
begin
FLocker.Acquire;
try
curtime := DateTimeToUnix(Now) * ;
if curtime = fTime then
begin
fstep := (fstep + ) and stepMask;
if fstep = then
begin
while curtime <= fTime do
curtime := DateTimeToUnix(Now) * ;
end;
end
else
fstep := ;
fTime := curtime;
Result := (curtime - Epoch) shl timeShift or
FWorkerID shl nodeShift or fstep;
finally
FLocker.Release;
end;
end; initialization InitNodeInfo; end.

说明和注释,我写在最上面的注释里了,这个拿来生成业务流水号真的很方便。

WebPascal脚本模型教程 - 网页...

雪花算法(snowflake)delphi版的相关教程结束。

《雪花算法(snowflake)delphi版.doc》

下载本文的Word格式文档,以方便收藏与打印。