ホームページ >バックエンド開発 >PHPチュートリアル >算法 - php如何生成唯一递增数字?

算法 - php如何生成唯一递增数字?

WBOY
WBOYオリジナル
2016-06-06 20:36:472086ブラウズ

1.不接受使用MySQL的自增字段的方法
2.高并发时也一定要确保唯一递增
3.使用C语言编写PHP扩展的方式不算

先谢谢大家

回复内容:

1.不接受使用MySQL的自增字段的方法
2.高并发时也一定要确保唯一递增
3.使用C语言编写PHP扩展的方式不算

先谢谢大家

参考MongoDB的ObjectID算法,可以考虑在ID中包含以下部分来防止冲突

  • 机器hash(防止多台机器之间ID冲突)
  • 进程ID(防止多进程冲突)
  • 时间戳(秒)
  • 自增值(同一秒内自增)

把时间放在最见面可以获得基本递增的效果

UUID1效果类似,PHP有现成实现 https://github.com/ramsey/uuid

递增, 请请求就要排序处理咯.

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。