Atom PHP唯一ID生成扩展

程序名称:Atom

授权协议: GPL

操作系统: 跨平台

开发语言: PHP

Atom 介绍


使用Twitter的 SNowflake算法,有兴趣可以了解一下这个算法: https://github.com/twitter/snowflake

PHP.ini的配置项:

[ukey]
ukey.datacenter = integer
ukey.worker = integer
ukey.twepoch = uint64
  • datacenter配置项是一个整数, 用于设置数据中心;

  • worker配置项是一个整数, 用于设置数据中心的机器序号;

  • twepoch配置项是一个64位的整数, 用于设置时间戳基数, 此值越大, 生成的ID越小;

Atom

Based on the Twitter SNowflake algorithm

PHP unique ID generator

functions list:

  • 1) string atom_next_id (void);
    Get the next unique ID.

  • 2) array atom_explain (string ID);
    Change unique ID to array includes: timestamp, datacenter id and worker id.

example:

<?PHP
$id = atom_next_id();
echo $id;

$info = atom_explain($id);
echo date('Y-m-d H:i:s', $info['timestamp']);
?>

install:

$  cd ./atom
$  PHPize
$  ./configure
$  make
$  sudo make install

PHP.ini configure entries:

[atom]
atom.datacenter = integer
atom.worker = intger
atom.twepoch = uint64

Atom 官网

https://github.com/liexusong/atom

相关编程语言

BlazeDS 是一个基于服务器的Java 远程控制(remoting...
OVal 是一个可扩展的Java对象数据验证框架,验证的规...
Volta 是一套开发工具,专为开发分布式、实时系统应...
OpenDDS 是一个开源的 C++ 实现的 对象管理组织 OMG...
JADE (Java Agent DEvelopment Framework) 是一个完...
FastMM ,在D2006和2007中已代替了原来的内存管理器。