国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

webman雪花id生成類

1.0.2 版本
2025-03-21 版本更新時間
129 安裝
5 star

簡介

Webman 雪花 ID 生成類

使用簡單、高效的雪花 ID 算法生成唯一的 64 位整數(shù) ID,支持高并發(fā)場景,適合分布式系統(tǒng)中唯一標識的生成需求。

安裝

composer require jisheng100/snowflake

使用

1. 生成雪花id

$id =  \Jisheng100\Snowflake\Snowflake::instance()->generateId();

2. 解析雪花id

$detail = \Jisheng100\Snowflake\Snowflake::instance()->parseId($id);

配置

雪花 ID 算法基于 64 位整數(shù)設(shè)計,其中:

  • 符號位:1 位,始終為 0,保證生成的 ID 為正數(shù)。
  • 時間戳:41 位,表示毫秒級時間戳,足夠支持約 69 年的時間跨度。
  • 機器 ID + 進程 ID:共 10 位,用于標識唯一的機器和進程。
  • 序列號:12 位,用于在同一毫秒內(nèi)生成多個唯一 ID,支持每毫秒最多生成 4096 個 ID。

配置參數(shù)說明

可以根據(jù)業(yè)務(wù)需求自定義以下參數(shù),確保在高并發(fā)場景下生成唯一 ID:

return [
    'enable' => true,
    'machine_id' => 0,            // 機器 ID,多臺機器需配置唯一值
    'machine_id_bits' => 3,       // 機器 ID 位數(shù),范圍 0-7(2^3=8)
    'process_id_bits' => 7,       // 進程 ID 位數(shù),范圍 0-127(2^7=128)
    'sequence_bits' => 12,        // 序列號位數(shù),每毫秒最多生成 4096(2^12)個 ID
];

注意事項

  • 機器 ID 配置:多臺機器需確保 machine_id 值唯一, machine_id的設(shè)值取決于機器id位數(shù),如machine_id_bits設(shè)置為3,則machine_id的設(shè)置值為0-7
  • 進程 ID 位數(shù):需大于等于實際業(yè)務(wù)所需的最大進程數(shù)。例如,如果業(yè)務(wù)使用了 64 個進程,則 process_id_bits 至少為 6 位。
  • 序列號位數(shù):默認支持每毫秒生成 4096 個 ID,如需更高并發(fā),可調(diào)整配置。
贊助商