天天看點

網遊伺服器中的GUID(唯一辨別碼)實作-基于snowflake算法

本文中的算法采用twitter的snowflake算法,具體請搜尋介紹,原來是用Scala寫的,因我項目需要,改寫成C++語言,主要用于高效的生成唯一的ID, 核心算法就是毫秒級時間(41位)+機器ID(10位)+毫秒内序列(12位).

網上也有好多PHP寫的插件子產品,核心用了網絡通訊将生成的ID發送給PHP使用,沒深入研究PHP的子產品寫法。

廢話不多說了,還是直接上代碼好了。

uuid.h

uuid.cpp

這樣的唯一ID就可以用來表示你系統中使用的例如物品唯一ID,坐騎唯一ID等等資料,友善記錄和追蹤。