在控制器里生成SnowFlakeId時(shí),在高并發(fā)場景下還是會(huì)發(fā)生ID重復(fù),需要傳入$workerId參數(shù)可以避免,已知在process的onWorkerStart里可以得到$worker->id,那么在controller里,該怎么得到$worker對象呢?
借樓問下
有沒有適用于webman的雪花算法庫
composer
"godruoyi/php-snowflake": "^2.0",
使用
$snowflake = new \Godruoyi\Snowflake\Snowflake;
$snowflake->id();
godruoyi/php-snowflake如果直接使用的話,在同一毫秒內(nèi)的并發(fā)請求會(huì)有重復(fù)結(jié)果,后來我用easyswoole/utility里的SnowFlake,用起來挺方便。https://www.easyswoole.com/Components/Help/snowFlake.html