我正在使用mongodb和php。我想知道何时使用 new MongoId()创建一个新的mongo id。它如何咨询数据库以确保唯一ID,我的意思是它是一个写操作或读操作。
答案 0 :(得分:1)
ObjectId的生成在本地发生,它不是数据库操作。 4个值用于生成ObjectId:
::Time.new.to_i
Digest::MD5.digest(Socket.gethostname).unpack("N")[0]
Process.pid % 0xFFFF
@counter = (@counter + 1) % 0xFFFFFF
您可以找到完整的代码here。